net/bnxt: modify VXLAN decap for multichannel mode
[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_tbl_list_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_TYPE_NORMAL,
198         .direction = TF_DIR_RX,
199         .srch_b4_alloc = BNXT_ULP_SEARCH_BEFORE_ALLOC_NO,
200         .result_start_idx = 0,
201         .result_bit_size = 128,
202         .result_num_fields = 26,
203         .encap_num_fields = 0,
204         .mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,
205         .index_opcode = BNXT_ULP_INDEX_OPCODE_ALLOCATE,
206         .index_operand = BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR
207         },
208         { /* class_tid: 1, wh_plus, table: l2_cntxt_cache_0 */
209         .resource_func = BNXT_ULP_RESOURCE_FUNC_INVALID,
210         .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_LOW,
211         .resource_sub_type =
212                 BNXT_ULP_RESOURCE_SUB_TYPE_CACHE_TYPE_L2_CNTXT_TCAM,
213         .direction = TF_DIR_RX,
214         .key_start_idx = 0,
215         .blob_key_bit_size = 8,
216         .key_bit_size = 8,
217         .key_num_fields = 1,
218         .result_start_idx = 26,
219         .result_bit_size = 10,
220         .result_num_fields = 1,
221         .encap_num_fields = 0,
222         .ident_start_idx = 0,
223         .ident_nums = 1
224         },
225         { /* class_tid: 1, wh_plus, table: l2_cntxt_tcam_0 */
226         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
227         .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_LOW,
228         .direction = TF_DIR_RX,
229         .tbl_opcode = BNXT_ULP_TCAM_TBL_OPC_ALLOC_WR_REGFILE,
230         .tbl_operand = BNXT_ULP_REGFILE_INDEX_L2_CNTXT_TCAM_INDEX_0,
231         .priority = BNXT_ULP_PRIORITY_LEVEL_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_OPCODE_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         .index_opcode = BNXT_ULP_INDEX_OPCODE_COMP_FIELD,
254         .index_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         .index_opcode = BNXT_ULP_INDEX_OPCODE_COMP_FIELD,
265         .index_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         .index_opcode = BNXT_ULP_INDEX_OPCODE_COMP_FIELD,
276         .index_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_TYPE_VFR_CFA_ACTION,
283         .direction = TF_DIR_TX,
284         .srch_b4_alloc = BNXT_ULP_SEARCH_BEFORE_ALLOC_NO,
285         .result_start_idx = 43,
286         .result_bit_size = 128,
287         .result_num_fields = 26,
288         .encap_num_fields = 0,
289         .mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,
290         .index_opcode = BNXT_ULP_INDEX_OPCODE_ALLOCATE,
291         .index_operand = BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR
292         },
293         { /* class_tid: 2, wh_plus, table: l2_cntxt_tcam_vfr_0 */
294         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
295         .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_LOW,
296         .cond_opcode = BNXT_ULP_COND_OPC_COMP_FIELD_IS_SET,
297         .cond_operand = BNXT_ULP_CF_IDX_VFR_MODE,
298         .direction = TF_DIR_TX,
299         .tbl_opcode = BNXT_ULP_TCAM_TBL_OPC_ALLOC_WR_REGFILE,
300         .tbl_operand = BNXT_ULP_REGFILE_INDEX_L2_CNTXT_TCAM_INDEX_0,
301         .priority = BNXT_ULP_PRIORITY_LEVEL_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_OPCODE_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_CACHE_TYPE_L2_CNTXT_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         .priority = BNXT_ULP_PRIORITY_LEVEL_0,
343         .key_start_idx = 28,
344         .blob_key_bit_size = 167,
345         .key_bit_size = 167,
346         .key_num_fields = 13,
347         .result_start_idx = 83,
348         .result_bit_size = 64,
349         .result_num_fields = 13,
350         .encap_num_fields = 0,
351         .ident_start_idx = 2,
352         .ident_nums = 0,
353         .mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,
354         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO
355         },
356         { /* class_tid: 2, wh_plus, table: parif_def_lkup_arec_ptr_0 */
357         .resource_func = BNXT_ULP_RESOURCE_FUNC_IF_TABLE,
358         .resource_type = TF_IF_TBL_TYPE_LKUP_PARIF_DFLT_ACT_REC_PTR,
359         .direction = TF_DIR_TX,
360         .result_start_idx = 96,
361         .result_bit_size = 32,
362         .result_num_fields = 1,
363         .encap_num_fields = 0,
364         .index_opcode = BNXT_ULP_INDEX_OPCODE_COMP_FIELD,
365         .index_operand = BNXT_ULP_CF_IDX_DRV_FUNC_PARIF
366         },
367         { /* class_tid: 2, wh_plus, table: parif_def_arec_ptr_0 */
368         .resource_func = BNXT_ULP_RESOURCE_FUNC_IF_TABLE,
369         .resource_type = TF_IF_TBL_TYPE_PROF_PARIF_DFLT_ACT_REC_PTR,
370         .direction = TF_DIR_TX,
371         .result_start_idx = 97,
372         .result_bit_size = 32,
373         .result_num_fields = 1,
374         .encap_num_fields = 0,
375         .index_opcode = BNXT_ULP_INDEX_OPCODE_COMP_FIELD,
376         .index_operand = BNXT_ULP_CF_IDX_DRV_FUNC_PARIF
377         },
378         { /* class_tid: 2, wh_plus, table: parif_def_err_arec_ptr_0 */
379         .resource_func = BNXT_ULP_RESOURCE_FUNC_IF_TABLE,
380         .resource_type = TF_IF_TBL_TYPE_PROF_PARIF_ERR_ACT_REC_PTR,
381         .direction = TF_DIR_TX,
382         .result_start_idx = 98,
383         .result_bit_size = 32,
384         .result_num_fields = 1,
385         .encap_num_fields = 0,
386         .index_opcode = BNXT_ULP_INDEX_OPCODE_COMP_FIELD,
387         .index_operand = BNXT_ULP_CF_IDX_DRV_FUNC_PARIF
388         },
389         { /* class_tid: 3, wh_plus, table: egr_int_vtag_encap_record_0 */
390         .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
391         .resource_type = TF_TBL_TYPE_ACT_ENCAP_8B,
392         .resource_sub_type =
393                 BNXT_ULP_RESOURCE_SUB_TYPE_INDEX_TYPE_NORMAL,
394         .direction = TF_DIR_TX,
395         .srch_b4_alloc = BNXT_ULP_SEARCH_BEFORE_ALLOC_NO,
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_OPCODE_NOP,
401         .index_opcode = BNXT_ULP_INDEX_OPCODE_ALLOCATE,
402         .index_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_TYPE_VFR_CFA_ACTION,
409         .direction = TF_DIR_TX,
410         .srch_b4_alloc = BNXT_ULP_SEARCH_BEFORE_ALLOC_NO,
411         .result_start_idx = 111,
412         .result_bit_size = 128,
413         .result_num_fields = 26,
414         .encap_num_fields = 0,
415         .mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,
416         .index_opcode = BNXT_ULP_INDEX_OPCODE_ALLOCATE,
417         .index_operand = BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR
418         },
419         { /* class_tid: 3, wh_plus, table: egr_l2_cntxt_cache_0 */
420         .resource_func = BNXT_ULP_RESOURCE_FUNC_INVALID,
421         .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_LOW,
422         .resource_sub_type =
423                 BNXT_ULP_RESOURCE_SUB_TYPE_CACHE_TYPE_L2_CNTXT_TCAM,
424         .direction = TF_DIR_TX,
425         .key_start_idx = 41,
426         .blob_key_bit_size = 8,
427         .key_bit_size = 8,
428         .key_num_fields = 1,
429         .result_start_idx = 137,
430         .result_bit_size = 0,
431         .result_num_fields = 0,
432         .encap_num_fields = 0,
433         .ident_start_idx = 2,
434         .ident_nums = 0
435         },
436         { /* class_tid: 3, wh_plus, table: egr_l2_cntxt_tcam_0 */
437         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
438         .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_LOW,
439         .direction = TF_DIR_TX,
440         .tbl_opcode = BNXT_ULP_TCAM_TBL_OPC_ALLOC_WR_REGFILE,
441         .tbl_operand = BNXT_ULP_REGFILE_INDEX_L2_CNTXT_TCAM_INDEX_0,
442         .priority = BNXT_ULP_PRIORITY_LEVEL_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_OPCODE_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_TYPE_NORMAL,
461         .direction = TF_DIR_RX,
462         .srch_b4_alloc = BNXT_ULP_SEARCH_BEFORE_ALLOC_NO,
463         .result_start_idx = 150,
464         .result_bit_size = 128,
465         .result_num_fields = 26,
466         .encap_num_fields = 0,
467         .mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,
468         .index_opcode = BNXT_ULP_INDEX_OPCODE_ALLOCATE,
469         .index_operand = BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR
470         },
471         { /* class_tid: 3, wh_plus, table: ing_l2_cntxt_dtagged_0 */
472         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
473         .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_HIGH,
474         .direction = TF_DIR_RX,
475         .srch_b4_alloc = BNXT_ULP_SEARCH_BEFORE_ALLOC_NO,
476         .priority = BNXT_ULP_PRIORITY_LEVEL_0,
477         .key_start_idx = 55,
478         .blob_key_bit_size = 167,
479         .key_bit_size = 167,
480         .key_num_fields = 13,
481         .result_start_idx = 176,
482         .result_bit_size = 64,
483         .result_num_fields = 13,
484         .encap_num_fields = 0,
485         .ident_start_idx = 2,
486         .ident_nums = 0,
487         .mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,
488         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO
489         },
490         { /* class_tid: 3, wh_plus, table: ing_l2_cntxt_stagged_0 */
491         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
492         .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_HIGH,
493         .direction = TF_DIR_RX,
494         .srch_b4_alloc = BNXT_ULP_SEARCH_BEFORE_ALLOC_NO,
495         .priority = BNXT_ULP_PRIORITY_LEVEL_0,
496         .key_start_idx = 68,
497         .blob_key_bit_size = 167,
498         .key_bit_size = 167,
499         .key_num_fields = 13,
500         .result_start_idx = 189,
501         .result_bit_size = 64,
502         .result_num_fields = 13,
503         .encap_num_fields = 0,
504         .ident_start_idx = 2,
505         .ident_nums = 0,
506         .mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,
507         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO
508         },
509         { /* class_tid: 4, wh_plus, table: egr_l2_cntxt_cache_0 */
510         .resource_func = BNXT_ULP_RESOURCE_FUNC_INVALID,
511         .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_LOW,
512         .resource_sub_type =
513                 BNXT_ULP_RESOURCE_SUB_TYPE_CACHE_TYPE_L2_CNTXT_TCAM,
514         .direction = TF_DIR_TX,
515         .key_start_idx = 81,
516         .blob_key_bit_size = 8,
517         .key_bit_size = 8,
518         .key_num_fields = 1,
519         .result_start_idx = 202,
520         .result_bit_size = 10,
521         .result_num_fields = 1,
522         .encap_num_fields = 0,
523         .ident_start_idx = 2,
524         .ident_nums = 1
525         },
526         { /* class_tid: 4, wh_plus, table: egr_l2_cntxt_tcam_0 */
527         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
528         .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_LOW,
529         .direction = TF_DIR_TX,
530         .tbl_opcode = BNXT_ULP_TCAM_TBL_OPC_ALLOC_WR_REGFILE,
531         .tbl_operand = BNXT_ULP_REGFILE_INDEX_L2_CNTXT_TCAM_INDEX_0,
532         .priority = BNXT_ULP_PRIORITY_LEVEL_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_OPCODE_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         .index_opcode = BNXT_ULP_INDEX_OPCODE_CONSTANT,
555         .index_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         .index_opcode = BNXT_ULP_INDEX_OPCODE_CONSTANT,
566         .index_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         .index_opcode = BNXT_ULP_INDEX_OPCODE_CONSTANT,
577         .index_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_TYPE_NORMAL,
584         .direction = TF_DIR_RX,
585         .srch_b4_alloc = BNXT_ULP_SEARCH_BEFORE_ALLOC_NO,
586         .result_start_idx = 219,
587         .result_bit_size = 128,
588         .result_num_fields = 26,
589         .encap_num_fields = 0,
590         .mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_SET_VFR_FLAG,
591         .index_opcode = BNXT_ULP_INDEX_OPCODE_ALLOCATE,
592         .index_operand = BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR
593         },
594         { /* class_tid: 4, wh_plus, table: ing_l2_cntxt_tcam_0 */
595         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
596         .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_HIGH,
597         .direction = TF_DIR_RX,
598         .tbl_opcode = BNXT_ULP_TCAM_TBL_OPC_ALLOC_WR_REGFILE,
599         .tbl_operand = BNXT_ULP_REGFILE_INDEX_L2_CNTXT_TCAM_INDEX_0,
600         .priority = BNXT_ULP_PRIORITY_LEVEL_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_OPCODE_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_TYPE_VFR_CFA_ACTION,
619         .direction = TF_DIR_TX,
620         .srch_b4_alloc = BNXT_ULP_SEARCH_BEFORE_ALLOC_NO,
621         .result_start_idx = 258,
622         .result_bit_size = 128,
623         .result_num_fields = 26,
624         .encap_num_fields = 0,
625         .mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,
626         .index_opcode = BNXT_ULP_INDEX_OPCODE_GLOBAL,
627         .index_operand = BNXT_ULP_GLB_REGFILE_INDEX_GLB_LB_AREC_PTR
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         .priority = BNXT_ULP_PRIORITY_LEVEL_0,
636         .key_start_idx = 108,
637         .blob_key_bit_size = 167,
638         .key_bit_size = 167,
639         .key_num_fields = 13,
640         .result_start_idx = 284,
641         .result_bit_size = 64,
642         .result_num_fields = 13,
643         .encap_num_fields = 0,
644         .ident_start_idx = 3,
645         .ident_nums = 1,
646         .mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,
647         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO
648         },
649         { /* class_tid: 6, wh_plus, table: profile_tcam_cache_0 */
650         .resource_func = BNXT_ULP_RESOURCE_FUNC_INVALID,
651         .resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,
652         .resource_sub_type =
653                 BNXT_ULP_RESOURCE_SUB_TYPE_CACHE_TYPE_PROFILE_TCAM,
654         .direction = TF_DIR_RX,
655         .key_start_idx = 121,
656         .blob_key_bit_size = 16,
657         .key_bit_size = 16,
658         .key_num_fields = 3,
659         .result_start_idx = 297,
660         .result_bit_size = 10,
661         .result_num_fields = 1,
662         .encap_num_fields = 0,
663         .ident_start_idx = 4,
664         .ident_nums = 1
665         },
666         { /* class_tid: 6, wh_plus, table: profile_tcam_0 */
667         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
668         .resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,
669         .direction = TF_DIR_RX,
670         .tbl_opcode = BNXT_ULP_TCAM_TBL_OPC_ALLOC_WR_REGFILE,
671         .tbl_operand = BNXT_ULP_REGFILE_INDEX_PROFILE_TCAM_INDEX_0,
672         .priority = BNXT_ULP_PRIORITY_LEVEL_1,
673         .key_start_idx = 124,
674         .blob_key_bit_size = 81,
675         .key_bit_size = 81,
676         .key_num_fields = 43,
677         .result_start_idx = 298,
678         .result_bit_size = 38,
679         .result_num_fields = 8,
680         .encap_num_fields = 0,
681         .ident_start_idx = 5,
682         .ident_nums = 0,
683         .mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,
684         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO
685         },
686         { /* class_tid: 6, wh_plus, table: ext_em_0 */
687         .resource_func = BNXT_ULP_RESOURCE_FUNC_EXT_EM_TABLE,
688         .resource_type = TF_MEM_EXTERNAL,
689         .mem_type_opcode = BNXT_ULP_MEM_TYPE_OPCODE_EXECUTE_IF_EXT,
690         .direction = TF_DIR_RX,
691         .key_start_idx = 167,
692         .blob_key_bit_size = 448,
693         .key_bit_size = 448,
694         .key_num_fields = 11,
695         .result_start_idx = 306,
696         .result_bit_size = 64,
697         .result_num_fields = 9,
698         .encap_num_fields = 0,
699         .ident_start_idx = 5,
700         .ident_nums = 0,
701         .mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_SET_IF_MARK_ACTION,
702         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES
703         },
704         { /* class_tid: 6, wh_plus, table: int_em_0 */
705         .resource_func = BNXT_ULP_RESOURCE_FUNC_INT_EM_TABLE,
706         .resource_type = TF_MEM_INTERNAL,
707         .mem_type_opcode = BNXT_ULP_MEM_TYPE_OPCODE_EXECUTE_IF_INT,
708         .direction = TF_DIR_RX,
709         .key_start_idx = 178,
710         .blob_key_bit_size = 200,
711         .key_bit_size = 200,
712         .key_num_fields = 11,
713         .result_start_idx = 315,
714         .result_bit_size = 64,
715         .result_num_fields = 9,
716         .encap_num_fields = 0,
717         .ident_start_idx = 5,
718         .ident_nums = 0,
719         .mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_SET_IF_MARK_ACTION,
720         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES
721         },
722         { /* class_tid: 7, wh_plus, table: l2_cntxt_tcam_0 */
723         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
724         .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_HIGH,
725         .direction = TF_DIR_RX,
726         .tbl_opcode = BNXT_ULP_TCAM_TBL_OPC_SRCH_ALLOC_WR_REGFILE,
727         .tbl_operand = BNXT_ULP_REGFILE_INDEX_L2_CNTXT_TCAM_INDEX_0,
728         .priority = BNXT_ULP_PRIORITY_LEVEL_0,
729         .key_start_idx = 189,
730         .blob_key_bit_size = 167,
731         .key_bit_size = 167,
732         .key_num_fields = 13,
733         .result_start_idx = 324,
734         .result_bit_size = 64,
735         .result_num_fields = 13,
736         .encap_num_fields = 0,
737         .ident_start_idx = 5,
738         .ident_nums = 1,
739         .mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,
740         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO
741         },
742         { /* class_tid: 7, wh_plus, table: profile_tcam_cache_0 */
743         .resource_func = BNXT_ULP_RESOURCE_FUNC_INVALID,
744         .resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,
745         .resource_sub_type =
746                 BNXT_ULP_RESOURCE_SUB_TYPE_CACHE_TYPE_PROFILE_TCAM,
747         .direction = TF_DIR_RX,
748         .key_start_idx = 202,
749         .blob_key_bit_size = 16,
750         .key_bit_size = 16,
751         .key_num_fields = 3,
752         .result_start_idx = 337,
753         .result_bit_size = 10,
754         .result_num_fields = 1,
755         .encap_num_fields = 0,
756         .ident_start_idx = 6,
757         .ident_nums = 1
758         },
759         { /* class_tid: 7, wh_plus, table: profile_tcam_0 */
760         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
761         .resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,
762         .direction = TF_DIR_RX,
763         .tbl_opcode = BNXT_ULP_TCAM_TBL_OPC_ALLOC_WR_REGFILE,
764         .tbl_operand = BNXT_ULP_REGFILE_INDEX_PROFILE_TCAM_INDEX_0,
765         .priority = BNXT_ULP_PRIORITY_LEVEL_1,
766         .key_start_idx = 205,
767         .blob_key_bit_size = 81,
768         .key_bit_size = 81,
769         .key_num_fields = 43,
770         .result_start_idx = 338,
771         .result_bit_size = 38,
772         .result_num_fields = 8,
773         .encap_num_fields = 0,
774         .ident_start_idx = 7,
775         .ident_nums = 0,
776         .mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,
777         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO
778         },
779         { /* class_tid: 7, wh_plus, table: ext_em_0 */
780         .resource_func = BNXT_ULP_RESOURCE_FUNC_EXT_EM_TABLE,
781         .resource_type = TF_MEM_EXTERNAL,
782         .mem_type_opcode = BNXT_ULP_MEM_TYPE_OPCODE_EXECUTE_IF_EXT,
783         .direction = TF_DIR_RX,
784         .key_start_idx = 248,
785         .blob_key_bit_size = 448,
786         .key_bit_size = 448,
787         .key_num_fields = 11,
788         .result_start_idx = 346,
789         .result_bit_size = 64,
790         .result_num_fields = 9,
791         .encap_num_fields = 0,
792         .ident_start_idx = 7,
793         .ident_nums = 0,
794         .mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_SET_IF_MARK_ACTION,
795         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES
796         },
797         { /* class_tid: 7, wh_plus, table: int_em_0 */
798         .resource_func = BNXT_ULP_RESOURCE_FUNC_INT_EM_TABLE,
799         .resource_type = TF_MEM_INTERNAL,
800         .mem_type_opcode = BNXT_ULP_MEM_TYPE_OPCODE_EXECUTE_IF_INT,
801         .direction = TF_DIR_RX,
802         .key_start_idx = 259,
803         .blob_key_bit_size = 200,
804         .key_bit_size = 200,
805         .key_num_fields = 11,
806         .result_start_idx = 355,
807         .result_bit_size = 64,
808         .result_num_fields = 9,
809         .encap_num_fields = 0,
810         .ident_start_idx = 7,
811         .ident_nums = 0,
812         .mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_SET_IF_MARK_ACTION,
813         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES
814         },
815         { /* class_tid: 8, wh_plus, table: l2_cntxt_cache_0 */
816         .resource_func = BNXT_ULP_RESOURCE_FUNC_INVALID,
817         .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_LOW,
818         .resource_sub_type =
819                 BNXT_ULP_RESOURCE_SUB_TYPE_CACHE_TYPE_L2_CNTXT_TCAM,
820         .direction = TF_DIR_RX,
821         .key_start_idx = 270,
822         .blob_key_bit_size = 8,
823         .key_bit_size = 8,
824         .key_num_fields = 1,
825         .result_start_idx = 364,
826         .result_bit_size = 10,
827         .result_num_fields = 1,
828         .encap_num_fields = 0,
829         .ident_start_idx = 7,
830         .ident_nums = 1
831         },
832         { /* class_tid: 8, wh_plus, table: l2_cntxt_tcam_0 */
833         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
834         .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_LOW,
835         .direction = TF_DIR_RX,
836         .tbl_opcode = BNXT_ULP_TCAM_TBL_OPC_ALLOC_WR_REGFILE,
837         .tbl_operand = BNXT_ULP_REGFILE_INDEX_L2_CNTXT_TCAM_INDEX_0,
838         .priority = BNXT_ULP_PRIORITY_LEVEL_0,
839         .key_start_idx = 271,
840         .blob_key_bit_size = 167,
841         .key_bit_size = 167,
842         .key_num_fields = 13,
843         .result_start_idx = 365,
844         .result_bit_size = 64,
845         .result_num_fields = 13,
846         .encap_num_fields = 0,
847         .ident_start_idx = 8,
848         .ident_nums = 0,
849         .mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,
850         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO
851         },
852         { /* class_tid: 8, wh_plus, table: profile_tcam_cache_0 */
853         .resource_func = BNXT_ULP_RESOURCE_FUNC_INVALID,
854         .resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,
855         .resource_sub_type =
856                 BNXT_ULP_RESOURCE_SUB_TYPE_CACHE_TYPE_PROFILE_TCAM,
857         .direction = TF_DIR_RX,
858         .key_start_idx = 284,
859         .blob_key_bit_size = 16,
860         .key_bit_size = 16,
861         .key_num_fields = 3,
862         .result_start_idx = 378,
863         .result_bit_size = 10,
864         .result_num_fields = 1,
865         .encap_num_fields = 0,
866         .ident_start_idx = 8,
867         .ident_nums = 1
868         },
869         { /* class_tid: 8, wh_plus, table: profile_tcam_0 */
870         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
871         .resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,
872         .direction = TF_DIR_RX,
873         .tbl_opcode = BNXT_ULP_TCAM_TBL_OPC_ALLOC_WR_REGFILE,
874         .tbl_operand = BNXT_ULP_REGFILE_INDEX_PROFILE_TCAM_INDEX_0,
875         .priority = BNXT_ULP_PRIORITY_LEVEL_0,
876         .key_start_idx = 287,
877         .blob_key_bit_size = 81,
878         .key_bit_size = 81,
879         .key_num_fields = 43,
880         .result_start_idx = 379,
881         .result_bit_size = 38,
882         .result_num_fields = 8,
883         .encap_num_fields = 0,
884         .ident_start_idx = 9,
885         .ident_nums = 0,
886         .mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,
887         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO
888         },
889         { /* class_tid: 8, wh_plus, table: ext_em_0 */
890         .resource_func = BNXT_ULP_RESOURCE_FUNC_EXT_EM_TABLE,
891         .resource_type = TF_MEM_EXTERNAL,
892         .mem_type_opcode = BNXT_ULP_MEM_TYPE_OPCODE_EXECUTE_IF_EXT,
893         .direction = TF_DIR_RX,
894         .key_start_idx = 330,
895         .blob_key_bit_size = 448,
896         .key_bit_size = 448,
897         .key_num_fields = 11,
898         .result_start_idx = 387,
899         .result_bit_size = 64,
900         .result_num_fields = 9,
901         .encap_num_fields = 0,
902         .ident_start_idx = 9,
903         .ident_nums = 0,
904         .mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_SET_IF_MARK_ACTION,
905         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES
906         },
907         { /* class_tid: 8, wh_plus, table: int_em_0 */
908         .resource_func = BNXT_ULP_RESOURCE_FUNC_INT_EM_TABLE,
909         .resource_type = TF_MEM_INTERNAL,
910         .mem_type_opcode = BNXT_ULP_MEM_TYPE_OPCODE_EXECUTE_IF_INT,
911         .direction = TF_DIR_RX,
912         .key_start_idx = 341,
913         .blob_key_bit_size = 200,
914         .key_bit_size = 200,
915         .key_num_fields = 11,
916         .result_start_idx = 396,
917         .result_bit_size = 64,
918         .result_num_fields = 9,
919         .encap_num_fields = 0,
920         .ident_start_idx = 9,
921         .ident_nums = 0,
922         .mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_SET_IF_MARK_ACTION,
923         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES
924         },
925         { /* class_tid: 9, wh_plus, table: l2_cntxt_cache_0 */
926         .resource_func = BNXT_ULP_RESOURCE_FUNC_INVALID,
927         .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_LOW,
928         .resource_sub_type =
929                 BNXT_ULP_RESOURCE_SUB_TYPE_CACHE_TYPE_L2_CNTXT_TCAM,
930         .direction = TF_DIR_RX,
931         .key_start_idx = 352,
932         .blob_key_bit_size = 8,
933         .key_bit_size = 8,
934         .key_num_fields = 1,
935         .result_start_idx = 405,
936         .result_bit_size = 10,
937         .result_num_fields = 1,
938         .encap_num_fields = 0,
939         .ident_start_idx = 9,
940         .ident_nums = 1
941         },
942         { /* class_tid: 9, wh_plus, table: l2_cntxt_tcam_0 */
943         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
944         .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_LOW,
945         .direction = TF_DIR_RX,
946         .tbl_opcode = BNXT_ULP_TCAM_TBL_OPC_ALLOC_WR_REGFILE,
947         .tbl_operand = BNXT_ULP_REGFILE_INDEX_L2_CNTXT_TCAM_INDEX_0,
948         .priority = BNXT_ULP_PRIORITY_LEVEL_0,
949         .key_start_idx = 353,
950         .blob_key_bit_size = 167,
951         .key_bit_size = 167,
952         .key_num_fields = 13,
953         .result_start_idx = 406,
954         .result_bit_size = 64,
955         .result_num_fields = 13,
956         .encap_num_fields = 0,
957         .ident_start_idx = 10,
958         .ident_nums = 0,
959         .mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,
960         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO
961         },
962         { /* class_tid: 9, wh_plus, table: profile_tcam_cache_0 */
963         .resource_func = BNXT_ULP_RESOURCE_FUNC_INVALID,
964         .resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,
965         .resource_sub_type =
966                 BNXT_ULP_RESOURCE_SUB_TYPE_CACHE_TYPE_PROFILE_TCAM,
967         .direction = TF_DIR_RX,
968         .key_start_idx = 366,
969         .blob_key_bit_size = 16,
970         .key_bit_size = 16,
971         .key_num_fields = 3,
972         .result_start_idx = 419,
973         .result_bit_size = 10,
974         .result_num_fields = 1,
975         .encap_num_fields = 0,
976         .ident_start_idx = 10,
977         .ident_nums = 1
978         },
979         { /* class_tid: 9, wh_plus, table: profile_tcam_0 */
980         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
981         .resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,
982         .direction = TF_DIR_RX,
983         .tbl_opcode = BNXT_ULP_TCAM_TBL_OPC_ALLOC_WR_REGFILE,
984         .tbl_operand = BNXT_ULP_REGFILE_INDEX_PROFILE_TCAM_INDEX_0,
985         .priority = BNXT_ULP_PRIORITY_LEVEL_0,
986         .key_start_idx = 369,
987         .blob_key_bit_size = 81,
988         .key_bit_size = 81,
989         .key_num_fields = 43,
990         .result_start_idx = 420,
991         .result_bit_size = 38,
992         .result_num_fields = 8,
993         .encap_num_fields = 0,
994         .ident_start_idx = 11,
995         .ident_nums = 0,
996         .mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,
997         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO
998         },
999         { /* class_tid: 9, wh_plus, table: ext_em_0 */
1000         .resource_func = BNXT_ULP_RESOURCE_FUNC_EXT_EM_TABLE,
1001         .resource_type = TF_MEM_EXTERNAL,
1002         .mem_type_opcode = BNXT_ULP_MEM_TYPE_OPCODE_EXECUTE_IF_EXT,
1003         .direction = TF_DIR_RX,
1004         .key_start_idx = 412,
1005         .blob_key_bit_size = 448,
1006         .key_bit_size = 448,
1007         .key_num_fields = 11,
1008         .result_start_idx = 428,
1009         .result_bit_size = 64,
1010         .result_num_fields = 9,
1011         .encap_num_fields = 0,
1012         .ident_start_idx = 11,
1013         .ident_nums = 0,
1014         .mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_SET_IF_MARK_ACTION,
1015         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES
1016         },
1017         { /* class_tid: 9, wh_plus, table: int_em_0 */
1018         .resource_func = BNXT_ULP_RESOURCE_FUNC_INT_EM_TABLE,
1019         .resource_type = TF_MEM_INTERNAL,
1020         .mem_type_opcode = BNXT_ULP_MEM_TYPE_OPCODE_EXECUTE_IF_INT,
1021         .direction = TF_DIR_RX,
1022         .key_start_idx = 423,
1023         .blob_key_bit_size = 200,
1024         .key_bit_size = 200,
1025         .key_num_fields = 11,
1026         .result_start_idx = 437,
1027         .result_bit_size = 64,
1028         .result_num_fields = 9,
1029         .encap_num_fields = 0,
1030         .ident_start_idx = 11,
1031         .ident_nums = 0,
1032         .mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_SET_IF_MARK_ACTION,
1033         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES
1034         },
1035         { /* class_tid: 10, wh_plus, table: l2_cntxt_cache_0 */
1036         .resource_func = BNXT_ULP_RESOURCE_FUNC_INVALID,
1037         .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_LOW,
1038         .resource_sub_type =
1039                 BNXT_ULP_RESOURCE_SUB_TYPE_CACHE_TYPE_L2_CNTXT_TCAM,
1040         .direction = TF_DIR_RX,
1041         .key_start_idx = 434,
1042         .blob_key_bit_size = 8,
1043         .key_bit_size = 8,
1044         .key_num_fields = 1,
1045         .result_start_idx = 446,
1046         .result_bit_size = 10,
1047         .result_num_fields = 1,
1048         .encap_num_fields = 0,
1049         .ident_start_idx = 11,
1050         .ident_nums = 1
1051         },
1052         { /* class_tid: 10, wh_plus, table: l2_cntxt_tcam_0 */
1053         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
1054         .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_LOW,
1055         .direction = TF_DIR_RX,
1056         .tbl_opcode = BNXT_ULP_TCAM_TBL_OPC_ALLOC_WR_REGFILE,
1057         .tbl_operand = BNXT_ULP_REGFILE_INDEX_L2_CNTXT_TCAM_INDEX_0,
1058         .priority = BNXT_ULP_PRIORITY_LEVEL_0,
1059         .key_start_idx = 435,
1060         .blob_key_bit_size = 167,
1061         .key_bit_size = 167,
1062         .key_num_fields = 13,
1063         .result_start_idx = 447,
1064         .result_bit_size = 64,
1065         .result_num_fields = 13,
1066         .encap_num_fields = 0,
1067         .ident_start_idx = 12,
1068         .ident_nums = 0,
1069         .mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,
1070         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO
1071         },
1072         { /* class_tid: 10, wh_plus, table: profile_tcam_cache_0 */
1073         .resource_func = BNXT_ULP_RESOURCE_FUNC_INVALID,
1074         .resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,
1075         .resource_sub_type =
1076                 BNXT_ULP_RESOURCE_SUB_TYPE_CACHE_TYPE_PROFILE_TCAM,
1077         .direction = TF_DIR_RX,
1078         .key_start_idx = 448,
1079         .blob_key_bit_size = 16,
1080         .key_bit_size = 16,
1081         .key_num_fields = 3,
1082         .result_start_idx = 460,
1083         .result_bit_size = 10,
1084         .result_num_fields = 1,
1085         .encap_num_fields = 0,
1086         .ident_start_idx = 12,
1087         .ident_nums = 1
1088         },
1089         { /* class_tid: 10, wh_plus, table: profile_tcam_0 */
1090         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
1091         .resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,
1092         .direction = TF_DIR_RX,
1093         .tbl_opcode = BNXT_ULP_TCAM_TBL_OPC_ALLOC_WR_REGFILE,
1094         .tbl_operand = BNXT_ULP_REGFILE_INDEX_PROFILE_TCAM_INDEX_0,
1095         .priority = BNXT_ULP_PRIORITY_LEVEL_0,
1096         .key_start_idx = 451,
1097         .blob_key_bit_size = 81,
1098         .key_bit_size = 81,
1099         .key_num_fields = 43,
1100         .result_start_idx = 461,
1101         .result_bit_size = 38,
1102         .result_num_fields = 8,
1103         .encap_num_fields = 0,
1104         .ident_start_idx = 13,
1105         .ident_nums = 0,
1106         .mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,
1107         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO
1108         },
1109         { /* class_tid: 10, wh_plus, table: ext_em_0 */
1110         .resource_func = BNXT_ULP_RESOURCE_FUNC_EXT_EM_TABLE,
1111         .resource_type = TF_MEM_EXTERNAL,
1112         .mem_type_opcode = BNXT_ULP_MEM_TYPE_OPCODE_EXECUTE_IF_EXT,
1113         .direction = TF_DIR_RX,
1114         .key_start_idx = 494,
1115         .blob_key_bit_size = 448,
1116         .key_bit_size = 448,
1117         .key_num_fields = 11,
1118         .result_start_idx = 469,
1119         .result_bit_size = 64,
1120         .result_num_fields = 9,
1121         .encap_num_fields = 0,
1122         .ident_start_idx = 13,
1123         .ident_nums = 0,
1124         .mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_SET_IF_MARK_ACTION,
1125         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES
1126         },
1127         { /* class_tid: 10, wh_plus, table: int_em_0 */
1128         .resource_func = BNXT_ULP_RESOURCE_FUNC_INT_EM_TABLE,
1129         .resource_type = TF_MEM_INTERNAL,
1130         .mem_type_opcode = BNXT_ULP_MEM_TYPE_OPCODE_EXECUTE_IF_INT,
1131         .direction = TF_DIR_RX,
1132         .key_start_idx = 505,
1133         .blob_key_bit_size = 392,
1134         .key_bit_size = 392,
1135         .key_num_fields = 11,
1136         .result_start_idx = 478,
1137         .result_bit_size = 64,
1138         .result_num_fields = 9,
1139         .encap_num_fields = 0,
1140         .ident_start_idx = 13,
1141         .ident_nums = 0,
1142         .mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_SET_IF_MARK_ACTION,
1143         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES
1144         },
1145         { /* class_tid: 11, wh_plus, table: l2_cntxt_cache_0 */
1146         .resource_func = BNXT_ULP_RESOURCE_FUNC_INVALID,
1147         .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_LOW,
1148         .resource_sub_type =
1149                 BNXT_ULP_RESOURCE_SUB_TYPE_CACHE_TYPE_L2_CNTXT_TCAM,
1150         .direction = TF_DIR_RX,
1151         .key_start_idx = 516,
1152         .blob_key_bit_size = 8,
1153         .key_bit_size = 8,
1154         .key_num_fields = 1,
1155         .result_start_idx = 487,
1156         .result_bit_size = 10,
1157         .result_num_fields = 1,
1158         .encap_num_fields = 0,
1159         .ident_start_idx = 13,
1160         .ident_nums = 1
1161         },
1162         { /* class_tid: 11, wh_plus, table: l2_cntxt_tcam_0 */
1163         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
1164         .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_LOW,
1165         .direction = TF_DIR_RX,
1166         .tbl_opcode = BNXT_ULP_TCAM_TBL_OPC_ALLOC_WR_REGFILE,
1167         .tbl_operand = BNXT_ULP_REGFILE_INDEX_L2_CNTXT_TCAM_INDEX_0,
1168         .priority = BNXT_ULP_PRIORITY_LEVEL_0,
1169         .key_start_idx = 517,
1170         .blob_key_bit_size = 167,
1171         .key_bit_size = 167,
1172         .key_num_fields = 13,
1173         .result_start_idx = 488,
1174         .result_bit_size = 64,
1175         .result_num_fields = 13,
1176         .encap_num_fields = 0,
1177         .ident_start_idx = 14,
1178         .ident_nums = 0,
1179         .mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,
1180         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO
1181         },
1182         { /* class_tid: 11, wh_plus, table: profile_tcam_cache_0 */
1183         .resource_func = BNXT_ULP_RESOURCE_FUNC_INVALID,
1184         .resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,
1185         .resource_sub_type =
1186                 BNXT_ULP_RESOURCE_SUB_TYPE_CACHE_TYPE_PROFILE_TCAM,
1187         .direction = TF_DIR_RX,
1188         .key_start_idx = 530,
1189         .blob_key_bit_size = 16,
1190         .key_bit_size = 16,
1191         .key_num_fields = 3,
1192         .result_start_idx = 501,
1193         .result_bit_size = 10,
1194         .result_num_fields = 1,
1195         .encap_num_fields = 0,
1196         .ident_start_idx = 14,
1197         .ident_nums = 1
1198         },
1199         { /* class_tid: 11, wh_plus, table: profile_tcam_0 */
1200         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
1201         .resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,
1202         .direction = TF_DIR_RX,
1203         .tbl_opcode = BNXT_ULP_TCAM_TBL_OPC_ALLOC_WR_REGFILE,
1204         .tbl_operand = BNXT_ULP_REGFILE_INDEX_PROFILE_TCAM_INDEX_0,
1205         .priority = BNXT_ULP_PRIORITY_LEVEL_0,
1206         .key_start_idx = 533,
1207         .blob_key_bit_size = 81,
1208         .key_bit_size = 81,
1209         .key_num_fields = 43,
1210         .result_start_idx = 502,
1211         .result_bit_size = 38,
1212         .result_num_fields = 8,
1213         .encap_num_fields = 0,
1214         .ident_start_idx = 15,
1215         .ident_nums = 0,
1216         .mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,
1217         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO
1218         },
1219         { /* class_tid: 11, wh_plus, table: ext_em_0 */
1220         .resource_func = BNXT_ULP_RESOURCE_FUNC_EXT_EM_TABLE,
1221         .resource_type = TF_MEM_EXTERNAL,
1222         .mem_type_opcode = BNXT_ULP_MEM_TYPE_OPCODE_EXECUTE_IF_EXT,
1223         .direction = TF_DIR_RX,
1224         .key_start_idx = 576,
1225         .blob_key_bit_size = 448,
1226         .key_bit_size = 448,
1227         .key_num_fields = 11,
1228         .result_start_idx = 510,
1229         .result_bit_size = 64,
1230         .result_num_fields = 9,
1231         .encap_num_fields = 0,
1232         .ident_start_idx = 15,
1233         .ident_nums = 0,
1234         .mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_SET_IF_MARK_ACTION,
1235         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES
1236         },
1237         { /* class_tid: 11, wh_plus, table: int_em_0 */
1238         .resource_func = BNXT_ULP_RESOURCE_FUNC_INT_EM_TABLE,
1239         .resource_type = TF_MEM_INTERNAL,
1240         .mem_type_opcode = BNXT_ULP_MEM_TYPE_OPCODE_EXECUTE_IF_INT,
1241         .direction = TF_DIR_RX,
1242         .key_start_idx = 587,
1243         .blob_key_bit_size = 392,
1244         .key_bit_size = 392,
1245         .key_num_fields = 11,
1246         .result_start_idx = 519,
1247         .result_bit_size = 64,
1248         .result_num_fields = 9,
1249         .encap_num_fields = 0,
1250         .ident_start_idx = 15,
1251         .ident_nums = 0,
1252         .mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_SET_IF_MARK_ACTION,
1253         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES
1254         },
1255         { /* class_tid: 12, wh_plus, table: l2_cntxt_tcam_0 */
1256         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
1257         .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_HIGH,
1258         .direction = TF_DIR_RX,
1259         .tbl_opcode = BNXT_ULP_TCAM_TBL_OPC_SRCH_ALLOC_WR_REGFILE,
1260         .tbl_operand = BNXT_ULP_REGFILE_INDEX_L2_CNTXT_TCAM_INDEX_0,
1261         .priority = BNXT_ULP_PRIORITY_LEVEL_0,
1262         .key_start_idx = 598,
1263         .blob_key_bit_size = 167,
1264         .key_bit_size = 167,
1265         .key_num_fields = 13,
1266         .result_start_idx = 528,
1267         .result_bit_size = 64,
1268         .result_num_fields = 13,
1269         .encap_num_fields = 0,
1270         .ident_start_idx = 15,
1271         .ident_nums = 1,
1272         .mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,
1273         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO
1274         },
1275         { /* class_tid: 12, wh_plus, table: profile_tcam_cache_0 */
1276         .resource_func = BNXT_ULP_RESOURCE_FUNC_INVALID,
1277         .resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,
1278         .resource_sub_type =
1279                 BNXT_ULP_RESOURCE_SUB_TYPE_CACHE_TYPE_PROFILE_TCAM,
1280         .direction = TF_DIR_RX,
1281         .key_start_idx = 611,
1282         .blob_key_bit_size = 16,
1283         .key_bit_size = 16,
1284         .key_num_fields = 3,
1285         .result_start_idx = 541,
1286         .result_bit_size = 10,
1287         .result_num_fields = 1,
1288         .encap_num_fields = 0,
1289         .ident_start_idx = 16,
1290         .ident_nums = 1
1291         },
1292         { /* class_tid: 12, wh_plus, table: profile_tcam_0 */
1293         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
1294         .resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,
1295         .direction = TF_DIR_RX,
1296         .tbl_opcode = BNXT_ULP_TCAM_TBL_OPC_ALLOC_WR_REGFILE,
1297         .tbl_operand = BNXT_ULP_REGFILE_INDEX_PROFILE_TCAM_INDEX_0,
1298         .priority = BNXT_ULP_PRIORITY_LEVEL_0,
1299         .key_start_idx = 614,
1300         .blob_key_bit_size = 81,
1301         .key_bit_size = 81,
1302         .key_num_fields = 43,
1303         .result_start_idx = 542,
1304         .result_bit_size = 38,
1305         .result_num_fields = 8,
1306         .encap_num_fields = 0,
1307         .ident_start_idx = 17,
1308         .ident_nums = 0,
1309         .mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,
1310         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO
1311         },
1312         { /* class_tid: 12, wh_plus, table: ext_em_0 */
1313         .resource_func = BNXT_ULP_RESOURCE_FUNC_EXT_EM_TABLE,
1314         .resource_type = TF_MEM_EXTERNAL,
1315         .mem_type_opcode = BNXT_ULP_MEM_TYPE_OPCODE_EXECUTE_IF_EXT,
1316         .direction = TF_DIR_RX,
1317         .key_start_idx = 657,
1318         .blob_key_bit_size = 448,
1319         .key_bit_size = 448,
1320         .key_num_fields = 11,
1321         .result_start_idx = 550,
1322         .result_bit_size = 64,
1323         .result_num_fields = 9,
1324         .encap_num_fields = 0,
1325         .ident_start_idx = 17,
1326         .ident_nums = 0,
1327         .mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_SET_IF_MARK_ACTION,
1328         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES
1329         },
1330         { /* class_tid: 12, wh_plus, table: int_em_0 */
1331         .resource_func = BNXT_ULP_RESOURCE_FUNC_INT_EM_TABLE,
1332         .resource_type = TF_MEM_INTERNAL,
1333         .mem_type_opcode = BNXT_ULP_MEM_TYPE_OPCODE_EXECUTE_IF_INT,
1334         .direction = TF_DIR_RX,
1335         .key_start_idx = 668,
1336         .blob_key_bit_size = 200,
1337         .key_bit_size = 200,
1338         .key_num_fields = 11,
1339         .result_start_idx = 559,
1340         .result_bit_size = 64,
1341         .result_num_fields = 9,
1342         .encap_num_fields = 0,
1343         .ident_start_idx = 17,
1344         .ident_nums = 0,
1345         .mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_SET_IF_MARK_ACTION,
1346         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES
1347         },
1348         { /* class_tid: 13, wh_plus, table: l2_cntxt_tcam_0 */
1349         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
1350         .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_HIGH,
1351         .direction = TF_DIR_RX,
1352         .tbl_opcode = BNXT_ULP_TCAM_TBL_OPC_SRCH_ALLOC_WR_REGFILE,
1353         .tbl_operand = BNXT_ULP_REGFILE_INDEX_L2_CNTXT_TCAM_INDEX_0,
1354         .priority = BNXT_ULP_PRIORITY_LEVEL_0,
1355         .key_start_idx = 679,
1356         .blob_key_bit_size = 167,
1357         .key_bit_size = 167,
1358         .key_num_fields = 13,
1359         .result_start_idx = 568,
1360         .result_bit_size = 64,
1361         .result_num_fields = 13,
1362         .encap_num_fields = 0,
1363         .ident_start_idx = 17,
1364         .ident_nums = 1,
1365         .mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,
1366         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO
1367         },
1368         { /* class_tid: 13, wh_plus, table: profile_tcam_cache_0 */
1369         .resource_func = BNXT_ULP_RESOURCE_FUNC_INVALID,
1370         .resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,
1371         .resource_sub_type =
1372                 BNXT_ULP_RESOURCE_SUB_TYPE_CACHE_TYPE_PROFILE_TCAM,
1373         .direction = TF_DIR_RX,
1374         .key_start_idx = 692,
1375         .blob_key_bit_size = 16,
1376         .key_bit_size = 16,
1377         .key_num_fields = 3,
1378         .result_start_idx = 581,
1379         .result_bit_size = 10,
1380         .result_num_fields = 1,
1381         .encap_num_fields = 0,
1382         .ident_start_idx = 18,
1383         .ident_nums = 1
1384         },
1385         { /* class_tid: 13, wh_plus, table: profile_tcam_0 */
1386         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
1387         .resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,
1388         .direction = TF_DIR_RX,
1389         .tbl_opcode = BNXT_ULP_TCAM_TBL_OPC_ALLOC_WR_REGFILE,
1390         .tbl_operand = BNXT_ULP_REGFILE_INDEX_PROFILE_TCAM_INDEX_0,
1391         .priority = BNXT_ULP_PRIORITY_LEVEL_0,
1392         .key_start_idx = 695,
1393         .blob_key_bit_size = 81,
1394         .key_bit_size = 81,
1395         .key_num_fields = 43,
1396         .result_start_idx = 582,
1397         .result_bit_size = 38,
1398         .result_num_fields = 8,
1399         .encap_num_fields = 0,
1400         .ident_start_idx = 19,
1401         .ident_nums = 0,
1402         .mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,
1403         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO
1404         },
1405         { /* class_tid: 13, wh_plus, table: ext_em_0 */
1406         .resource_func = BNXT_ULP_RESOURCE_FUNC_EXT_EM_TABLE,
1407         .resource_type = TF_MEM_EXTERNAL,
1408         .mem_type_opcode = BNXT_ULP_MEM_TYPE_OPCODE_EXECUTE_IF_EXT,
1409         .direction = TF_DIR_RX,
1410         .key_start_idx = 738,
1411         .blob_key_bit_size = 448,
1412         .key_bit_size = 448,
1413         .key_num_fields = 11,
1414         .result_start_idx = 590,
1415         .result_bit_size = 64,
1416         .result_num_fields = 9,
1417         .encap_num_fields = 0,
1418         .ident_start_idx = 19,
1419         .ident_nums = 0,
1420         .mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_SET_IF_MARK_ACTION,
1421         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES
1422         },
1423         { /* class_tid: 13, wh_plus, table: int_em_0 */
1424         .resource_func = BNXT_ULP_RESOURCE_FUNC_INT_EM_TABLE,
1425         .resource_type = TF_MEM_INTERNAL,
1426         .mem_type_opcode = BNXT_ULP_MEM_TYPE_OPCODE_EXECUTE_IF_INT,
1427         .direction = TF_DIR_RX,
1428         .key_start_idx = 749,
1429         .blob_key_bit_size = 200,
1430         .key_bit_size = 200,
1431         .key_num_fields = 11,
1432         .result_start_idx = 599,
1433         .result_bit_size = 64,
1434         .result_num_fields = 9,
1435         .encap_num_fields = 0,
1436         .ident_start_idx = 19,
1437         .ident_nums = 0,
1438         .mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_SET_IF_MARK_ACTION,
1439         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES
1440         },
1441         { /* class_tid: 14, wh_plus, table: l2_cntxt_tcam_0 */
1442         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
1443         .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_HIGH,
1444         .direction = TF_DIR_RX,
1445         .tbl_opcode = BNXT_ULP_TCAM_TBL_OPC_SRCH_ALLOC_WR_REGFILE,
1446         .tbl_operand = BNXT_ULP_REGFILE_INDEX_L2_CNTXT_TCAM_INDEX_0,
1447         .priority = BNXT_ULP_PRIORITY_LEVEL_0,
1448         .key_start_idx = 760,
1449         .blob_key_bit_size = 167,
1450         .key_bit_size = 167,
1451         .key_num_fields = 13,
1452         .result_start_idx = 608,
1453         .result_bit_size = 64,
1454         .result_num_fields = 13,
1455         .encap_num_fields = 0,
1456         .ident_start_idx = 19,
1457         .ident_nums = 1,
1458         .mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,
1459         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO
1460         },
1461         { /* class_tid: 14, wh_plus, table: profile_tcam_cache_0 */
1462         .resource_func = BNXT_ULP_RESOURCE_FUNC_INVALID,
1463         .resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,
1464         .resource_sub_type =
1465                 BNXT_ULP_RESOURCE_SUB_TYPE_CACHE_TYPE_PROFILE_TCAM,
1466         .direction = TF_DIR_RX,
1467         .key_start_idx = 773,
1468         .blob_key_bit_size = 16,
1469         .key_bit_size = 16,
1470         .key_num_fields = 3,
1471         .result_start_idx = 621,
1472         .result_bit_size = 10,
1473         .result_num_fields = 1,
1474         .encap_num_fields = 0,
1475         .ident_start_idx = 20,
1476         .ident_nums = 1
1477         },
1478         { /* class_tid: 14, wh_plus, table: profile_tcam_0 */
1479         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
1480         .resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,
1481         .direction = TF_DIR_RX,
1482         .tbl_opcode = BNXT_ULP_TCAM_TBL_OPC_ALLOC_WR_REGFILE,
1483         .tbl_operand = BNXT_ULP_REGFILE_INDEX_PROFILE_TCAM_INDEX_0,
1484         .priority = BNXT_ULP_PRIORITY_LEVEL_0,
1485         .key_start_idx = 776,
1486         .blob_key_bit_size = 81,
1487         .key_bit_size = 81,
1488         .key_num_fields = 43,
1489         .result_start_idx = 622,
1490         .result_bit_size = 38,
1491         .result_num_fields = 8,
1492         .encap_num_fields = 0,
1493         .ident_start_idx = 21,
1494         .ident_nums = 0,
1495         .mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,
1496         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO
1497         },
1498         { /* class_tid: 14, wh_plus, table: ext_em_0 */
1499         .resource_func = BNXT_ULP_RESOURCE_FUNC_EXT_EM_TABLE,
1500         .resource_type = TF_MEM_EXTERNAL,
1501         .mem_type_opcode = BNXT_ULP_MEM_TYPE_OPCODE_EXECUTE_IF_EXT,
1502         .direction = TF_DIR_RX,
1503         .key_start_idx = 819,
1504         .blob_key_bit_size = 448,
1505         .key_bit_size = 448,
1506         .key_num_fields = 11,
1507         .result_start_idx = 630,
1508         .result_bit_size = 64,
1509         .result_num_fields = 9,
1510         .encap_num_fields = 0,
1511         .ident_start_idx = 21,
1512         .ident_nums = 0,
1513         .mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_SET_IF_MARK_ACTION,
1514         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES
1515         },
1516         { /* class_tid: 14, wh_plus, table: int_em_0 */
1517         .resource_func = BNXT_ULP_RESOURCE_FUNC_INT_EM_TABLE,
1518         .resource_type = TF_MEM_INTERNAL,
1519         .mem_type_opcode = BNXT_ULP_MEM_TYPE_OPCODE_EXECUTE_IF_INT,
1520         .direction = TF_DIR_RX,
1521         .key_start_idx = 830,
1522         .blob_key_bit_size = 392,
1523         .key_bit_size = 392,
1524         .key_num_fields = 11,
1525         .result_start_idx = 639,
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_OPCODE_SET_IF_MARK_ACTION,
1532         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES
1533         },
1534         { /* class_tid: 15, wh_plus, table: l2_cntxt_tcam_0 */
1535         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
1536         .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_HIGH,
1537         .direction = TF_DIR_RX,
1538         .tbl_opcode = BNXT_ULP_TCAM_TBL_OPC_SRCH_ALLOC_WR_REGFILE,
1539         .tbl_operand = BNXT_ULP_REGFILE_INDEX_L2_CNTXT_TCAM_INDEX_0,
1540         .priority = BNXT_ULP_PRIORITY_LEVEL_0,
1541         .key_start_idx = 841,
1542         .blob_key_bit_size = 167,
1543         .key_bit_size = 167,
1544         .key_num_fields = 13,
1545         .result_start_idx = 648,
1546         .result_bit_size = 64,
1547         .result_num_fields = 13,
1548         .encap_num_fields = 0,
1549         .ident_start_idx = 21,
1550         .ident_nums = 1,
1551         .mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,
1552         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO
1553         },
1554         { /* class_tid: 15, wh_plus, table: profile_tcam_cache_0 */
1555         .resource_func = BNXT_ULP_RESOURCE_FUNC_INVALID,
1556         .resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,
1557         .resource_sub_type =
1558                 BNXT_ULP_RESOURCE_SUB_TYPE_CACHE_TYPE_PROFILE_TCAM,
1559         .direction = TF_DIR_RX,
1560         .key_start_idx = 854,
1561         .blob_key_bit_size = 16,
1562         .key_bit_size = 16,
1563         .key_num_fields = 3,
1564         .result_start_idx = 661,
1565         .result_bit_size = 10,
1566         .result_num_fields = 1,
1567         .encap_num_fields = 0,
1568         .ident_start_idx = 22,
1569         .ident_nums = 1
1570         },
1571         { /* class_tid: 15, wh_plus, table: profile_tcam_0 */
1572         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
1573         .resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,
1574         .direction = TF_DIR_RX,
1575         .tbl_opcode = BNXT_ULP_TCAM_TBL_OPC_ALLOC_WR_REGFILE,
1576         .tbl_operand = BNXT_ULP_REGFILE_INDEX_PROFILE_TCAM_INDEX_0,
1577         .priority = BNXT_ULP_PRIORITY_LEVEL_0,
1578         .key_start_idx = 857,
1579         .blob_key_bit_size = 81,
1580         .key_bit_size = 81,
1581         .key_num_fields = 43,
1582         .result_start_idx = 662,
1583         .result_bit_size = 38,
1584         .result_num_fields = 8,
1585         .encap_num_fields = 0,
1586         .ident_start_idx = 23,
1587         .ident_nums = 0,
1588         .mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,
1589         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO
1590         },
1591         { /* class_tid: 15, wh_plus, table: ext_em_0 */
1592         .resource_func = BNXT_ULP_RESOURCE_FUNC_EXT_EM_TABLE,
1593         .resource_type = TF_MEM_EXTERNAL,
1594         .mem_type_opcode = BNXT_ULP_MEM_TYPE_OPCODE_EXECUTE_IF_EXT,
1595         .direction = TF_DIR_RX,
1596         .key_start_idx = 900,
1597         .blob_key_bit_size = 448,
1598         .key_bit_size = 448,
1599         .key_num_fields = 11,
1600         .result_start_idx = 670,
1601         .result_bit_size = 64,
1602         .result_num_fields = 9,
1603         .encap_num_fields = 0,
1604         .ident_start_idx = 23,
1605         .ident_nums = 0,
1606         .mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_SET_IF_MARK_ACTION,
1607         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES
1608         },
1609         { /* class_tid: 15, wh_plus, table: int_em_0 */
1610         .resource_func = BNXT_ULP_RESOURCE_FUNC_INT_EM_TABLE,
1611         .resource_type = TF_MEM_INTERNAL,
1612         .mem_type_opcode = BNXT_ULP_MEM_TYPE_OPCODE_EXECUTE_IF_INT,
1613         .direction = TF_DIR_RX,
1614         .key_start_idx = 911,
1615         .blob_key_bit_size = 392,
1616         .key_bit_size = 392,
1617         .key_num_fields = 11,
1618         .result_start_idx = 679,
1619         .result_bit_size = 64,
1620         .result_num_fields = 9,
1621         .encap_num_fields = 0,
1622         .ident_start_idx = 23,
1623         .ident_nums = 0,
1624         .mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_SET_IF_MARK_ACTION,
1625         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES
1626         },
1627         { /* class_tid: 16, wh_plus, table: l2_cntxt_tcam_0 */
1628         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
1629         .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_HIGH,
1630         .direction = TF_DIR_RX,
1631         .tbl_opcode = BNXT_ULP_TCAM_TBL_OPC_SRCH_ALLOC_WR_REGFILE,
1632         .tbl_operand = BNXT_ULP_REGFILE_INDEX_L2_CNTXT_TCAM_INDEX_0,
1633         .priority = BNXT_ULP_PRIORITY_LEVEL_0,
1634         .key_start_idx = 922,
1635         .blob_key_bit_size = 167,
1636         .key_bit_size = 167,
1637         .key_num_fields = 13,
1638         .result_start_idx = 688,
1639         .result_bit_size = 64,
1640         .result_num_fields = 13,
1641         .encap_num_fields = 0,
1642         .ident_start_idx = 23,
1643         .ident_nums = 1,
1644         .mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,
1645         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO
1646         },
1647         { /* class_tid: 16, wh_plus, table: profile_tcam_cache_0 */
1648         .resource_func = BNXT_ULP_RESOURCE_FUNC_INVALID,
1649         .resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,
1650         .resource_sub_type =
1651                 BNXT_ULP_RESOURCE_SUB_TYPE_CACHE_TYPE_PROFILE_TCAM,
1652         .direction = TF_DIR_RX,
1653         .key_start_idx = 935,
1654         .blob_key_bit_size = 16,
1655         .key_bit_size = 16,
1656         .key_num_fields = 3,
1657         .result_start_idx = 701,
1658         .result_bit_size = 10,
1659         .result_num_fields = 1,
1660         .encap_num_fields = 0,
1661         .ident_start_idx = 24,
1662         .ident_nums = 1
1663         },
1664         { /* class_tid: 16, wh_plus, table: profile_tcam_0 */
1665         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
1666         .resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,
1667         .direction = TF_DIR_RX,
1668         .tbl_opcode = BNXT_ULP_TCAM_TBL_OPC_ALLOC_WR_REGFILE,
1669         .tbl_operand = BNXT_ULP_REGFILE_INDEX_PROFILE_TCAM_INDEX_0,
1670         .priority = BNXT_ULP_PRIORITY_LEVEL_0,
1671         .key_start_idx = 938,
1672         .blob_key_bit_size = 81,
1673         .key_bit_size = 81,
1674         .key_num_fields = 43,
1675         .result_start_idx = 702,
1676         .result_bit_size = 38,
1677         .result_num_fields = 8,
1678         .encap_num_fields = 0,
1679         .ident_start_idx = 25,
1680         .ident_nums = 0,
1681         .mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,
1682         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO
1683         },
1684         { /* class_tid: 16, wh_plus, table: ext_em_0 */
1685         .resource_func = BNXT_ULP_RESOURCE_FUNC_EXT_EM_TABLE,
1686         .resource_type = TF_MEM_EXTERNAL,
1687         .mem_type_opcode = BNXT_ULP_MEM_TYPE_OPCODE_EXECUTE_IF_EXT,
1688         .direction = TF_DIR_RX,
1689         .key_start_idx = 981,
1690         .blob_key_bit_size = 448,
1691         .key_bit_size = 448,
1692         .key_num_fields = 11,
1693         .result_start_idx = 710,
1694         .result_bit_size = 64,
1695         .result_num_fields = 9,
1696         .encap_num_fields = 0,
1697         .ident_start_idx = 25,
1698         .ident_nums = 0,
1699         .mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_SET_IF_MARK_ACTION,
1700         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES
1701         },
1702         { /* class_tid: 16, wh_plus, table: int_em_0 */
1703         .resource_func = BNXT_ULP_RESOURCE_FUNC_INT_EM_TABLE,
1704         .resource_type = TF_MEM_INTERNAL,
1705         .mem_type_opcode = BNXT_ULP_MEM_TYPE_OPCODE_EXECUTE_IF_INT,
1706         .direction = TF_DIR_RX,
1707         .key_start_idx = 992,
1708         .blob_key_bit_size = 200,
1709         .key_bit_size = 200,
1710         .key_num_fields = 11,
1711         .result_start_idx = 719,
1712         .result_bit_size = 64,
1713         .result_num_fields = 9,
1714         .encap_num_fields = 0,
1715         .ident_start_idx = 25,
1716         .ident_nums = 0,
1717         .mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_SET_IF_MARK_ACTION,
1718         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES
1719         },
1720         { /* class_tid: 17, wh_plus, table: l2_cntxt_tcam_0 */
1721         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
1722         .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_HIGH,
1723         .direction = TF_DIR_RX,
1724         .tbl_opcode = BNXT_ULP_TCAM_TBL_OPC_SRCH_ALLOC_WR_REGFILE,
1725         .tbl_operand = BNXT_ULP_REGFILE_INDEX_L2_CNTXT_TCAM_INDEX_0,
1726         .priority = BNXT_ULP_PRIORITY_LEVEL_0,
1727         .key_start_idx = 1003,
1728         .blob_key_bit_size = 167,
1729         .key_bit_size = 167,
1730         .key_num_fields = 13,
1731         .result_start_idx = 728,
1732         .result_bit_size = 64,
1733         .result_num_fields = 13,
1734         .encap_num_fields = 0,
1735         .ident_start_idx = 25,
1736         .ident_nums = 1,
1737         .mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,
1738         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO
1739         },
1740         { /* class_tid: 17, wh_plus, table: profile_tcam_cache_0 */
1741         .resource_func = BNXT_ULP_RESOURCE_FUNC_INVALID,
1742         .resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,
1743         .resource_sub_type =
1744                 BNXT_ULP_RESOURCE_SUB_TYPE_CACHE_TYPE_PROFILE_TCAM,
1745         .direction = TF_DIR_RX,
1746         .key_start_idx = 1016,
1747         .blob_key_bit_size = 16,
1748         .key_bit_size = 16,
1749         .key_num_fields = 3,
1750         .result_start_idx = 741,
1751         .result_bit_size = 10,
1752         .result_num_fields = 1,
1753         .encap_num_fields = 0,
1754         .ident_start_idx = 26,
1755         .ident_nums = 1
1756         },
1757         { /* class_tid: 17, wh_plus, table: profile_tcam_0 */
1758         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
1759         .resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,
1760         .direction = TF_DIR_RX,
1761         .tbl_opcode = BNXT_ULP_TCAM_TBL_OPC_ALLOC_WR_REGFILE,
1762         .tbl_operand = BNXT_ULP_REGFILE_INDEX_PROFILE_TCAM_INDEX_0,
1763         .priority = BNXT_ULP_PRIORITY_LEVEL_0,
1764         .key_start_idx = 1019,
1765         .blob_key_bit_size = 81,
1766         .key_bit_size = 81,
1767         .key_num_fields = 43,
1768         .result_start_idx = 742,
1769         .result_bit_size = 38,
1770         .result_num_fields = 8,
1771         .encap_num_fields = 0,
1772         .ident_start_idx = 27,
1773         .ident_nums = 0,
1774         .mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,
1775         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO
1776         },
1777         { /* class_tid: 17, wh_plus, table: ext_em_0 */
1778         .resource_func = BNXT_ULP_RESOURCE_FUNC_EXT_EM_TABLE,
1779         .resource_type = TF_MEM_EXTERNAL,
1780         .mem_type_opcode = BNXT_ULP_MEM_TYPE_OPCODE_EXECUTE_IF_EXT,
1781         .direction = TF_DIR_RX,
1782         .key_start_idx = 1062,
1783         .blob_key_bit_size = 448,
1784         .key_bit_size = 448,
1785         .key_num_fields = 11,
1786         .result_start_idx = 750,
1787         .result_bit_size = 64,
1788         .result_num_fields = 9,
1789         .encap_num_fields = 0,
1790         .ident_start_idx = 27,
1791         .ident_nums = 0,
1792         .mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_SET_IF_MARK_ACTION,
1793         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES
1794         },
1795         { /* class_tid: 17, wh_plus, table: int_em_0 */
1796         .resource_func = BNXT_ULP_RESOURCE_FUNC_INT_EM_TABLE,
1797         .resource_type = TF_MEM_INTERNAL,
1798         .mem_type_opcode = BNXT_ULP_MEM_TYPE_OPCODE_EXECUTE_IF_INT,
1799         .direction = TF_DIR_RX,
1800         .key_start_idx = 1073,
1801         .blob_key_bit_size = 392,
1802         .key_bit_size = 392,
1803         .key_num_fields = 11,
1804         .result_start_idx = 759,
1805         .result_bit_size = 64,
1806         .result_num_fields = 9,
1807         .encap_num_fields = 0,
1808         .ident_start_idx = 27,
1809         .ident_nums = 0,
1810         .mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_SET_IF_MARK_ACTION,
1811         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES
1812         },
1813         { /* class_tid: 18, wh_plus, table: int_flow_counter_tbl_0 */
1814         .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
1815         .resource_type = TF_TBL_TYPE_ACT_STATS_64,
1816         .resource_sub_type =
1817                 BNXT_ULP_RESOURCE_SUB_TYPE_INDEX_TYPE_INT_COUNT_ACC,
1818         .cond_opcode = BNXT_ULP_COND_OPC_ACTION_BIT_IS_SET,
1819         .cond_operand = BNXT_ULP_ACTION_BIT_COUNT,
1820         .direction = TF_DIR_RX,
1821         .srch_b4_alloc = BNXT_ULP_SEARCH_BEFORE_ALLOC_NO,
1822         .result_start_idx = 768,
1823         .result_bit_size = 64,
1824         .result_num_fields = 1,
1825         .encap_num_fields = 0,
1826         .mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,
1827         .index_opcode = BNXT_ULP_INDEX_OPCODE_ALLOCATE,
1828         .index_operand = BNXT_ULP_REGFILE_INDEX_FLOW_CNTR_PTR_0
1829         },
1830         { /* class_tid: 18, wh_plus, table: l2_cntxt_tcam_0 */
1831         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
1832         .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_HIGH,
1833         .direction = TF_DIR_RX,
1834         .tbl_opcode = BNXT_ULP_TCAM_TBL_OPC_SRCH_ALLOC_WR_REGFILE,
1835         .tbl_operand = BNXT_ULP_REGFILE_INDEX_L2_CNTXT_TCAM_INDEX_0,
1836         .priority = BNXT_ULP_PRIORITY_LEVEL_0,
1837         .key_start_idx = 1084,
1838         .blob_key_bit_size = 167,
1839         .key_bit_size = 167,
1840         .key_num_fields = 13,
1841         .result_start_idx = 769,
1842         .result_bit_size = 64,
1843         .result_num_fields = 13,
1844         .encap_num_fields = 0,
1845         .ident_start_idx = 27,
1846         .ident_nums = 1,
1847         .mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,
1848         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO
1849         },
1850         { /* class_tid: 18, wh_plus, table: profile_tcam_cache_0 */
1851         .resource_func = BNXT_ULP_RESOURCE_FUNC_INVALID,
1852         .resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,
1853         .resource_sub_type =
1854                 BNXT_ULP_RESOURCE_SUB_TYPE_CACHE_TYPE_PROFILE_TCAM,
1855         .direction = TF_DIR_RX,
1856         .key_start_idx = 1097,
1857         .blob_key_bit_size = 16,
1858         .key_bit_size = 16,
1859         .key_num_fields = 3,
1860         .result_start_idx = 782,
1861         .result_bit_size = 20,
1862         .result_num_fields = 2,
1863         .encap_num_fields = 0,
1864         .ident_start_idx = 28,
1865         .ident_nums = 2
1866         },
1867         { /* class_tid: 18, wh_plus, table: profile_tcam_0 */
1868         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
1869         .resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,
1870         .direction = TF_DIR_RX,
1871         .tbl_opcode = BNXT_ULP_TCAM_TBL_OPC_ALLOC_WR_REGFILE,
1872         .tbl_operand = BNXT_ULP_REGFILE_INDEX_PROFILE_TCAM_INDEX_0,
1873         .priority = BNXT_ULP_PRIORITY_LEVEL_0,
1874         .key_start_idx = 1100,
1875         .blob_key_bit_size = 81,
1876         .key_bit_size = 81,
1877         .key_num_fields = 43,
1878         .result_start_idx = 784,
1879         .result_bit_size = 38,
1880         .result_num_fields = 8,
1881         .encap_num_fields = 0,
1882         .ident_start_idx = 30,
1883         .ident_nums = 0,
1884         .mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,
1885         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO
1886         },
1887         { /* class_tid: 18, wh_plus, table: wm_0 */
1888         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
1889         .resource_type = TF_TCAM_TBL_TYPE_WC_TCAM,
1890         .direction = TF_DIR_RX,
1891         .srch_b4_alloc = BNXT_ULP_SEARCH_BEFORE_ALLOC_NO,
1892         .priority = BNXT_ULP_PRIORITY_LEVEL_0,
1893         .key_start_idx = 1143,
1894         .blob_key_bit_size = 192,
1895         .key_bit_size = 160,
1896         .key_num_fields = 5,
1897         .result_start_idx = 792,
1898         .result_bit_size = 19,
1899         .result_num_fields = 3,
1900         .encap_num_fields = 0,
1901         .ident_start_idx = 30,
1902         .ident_nums = 0,
1903         .mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_SET_IF_MARK_ACTION,
1904         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES
1905         },
1906         { /* class_tid: 19, wh_plus, table: l2_cntxt_tcam_0 */
1907         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
1908         .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_HIGH,
1909         .direction = TF_DIR_RX,
1910         .tbl_opcode = BNXT_ULP_TCAM_TBL_OPC_SRCH_ALLOC_WR_REGFILE,
1911         .tbl_operand = BNXT_ULP_REGFILE_INDEX_L2_CNTXT_TCAM_INDEX_0,
1912         .priority = BNXT_ULP_PRIORITY_LEVEL_0,
1913         .key_start_idx = 1148,
1914         .blob_key_bit_size = 167,
1915         .key_bit_size = 167,
1916         .key_num_fields = 13,
1917         .result_start_idx = 795,
1918         .result_bit_size = 64,
1919         .result_num_fields = 13,
1920         .encap_num_fields = 0,
1921         .ident_start_idx = 30,
1922         .ident_nums = 1,
1923         .mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,
1924         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO
1925         },
1926         { /* class_tid: 19, wh_plus, table: profile_tcam_cache_0 */
1927         .resource_func = BNXT_ULP_RESOURCE_FUNC_INVALID,
1928         .resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,
1929         .resource_sub_type =
1930                 BNXT_ULP_RESOURCE_SUB_TYPE_CACHE_TYPE_PROFILE_TCAM,
1931         .direction = TF_DIR_RX,
1932         .key_start_idx = 1161,
1933         .blob_key_bit_size = 16,
1934         .key_bit_size = 16,
1935         .key_num_fields = 3,
1936         .result_start_idx = 808,
1937         .result_bit_size = 20,
1938         .result_num_fields = 2,
1939         .encap_num_fields = 0,
1940         .ident_start_idx = 31,
1941         .ident_nums = 2
1942         },
1943         { /* class_tid: 19, wh_plus, table: profile_tcam_0 */
1944         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
1945         .resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,
1946         .direction = TF_DIR_RX,
1947         .tbl_opcode = BNXT_ULP_TCAM_TBL_OPC_ALLOC_WR_REGFILE,
1948         .tbl_operand = BNXT_ULP_REGFILE_INDEX_PROFILE_TCAM_INDEX_0,
1949         .priority = BNXT_ULP_PRIORITY_LEVEL_0,
1950         .key_start_idx = 1164,
1951         .blob_key_bit_size = 81,
1952         .key_bit_size = 81,
1953         .key_num_fields = 43,
1954         .result_start_idx = 810,
1955         .result_bit_size = 38,
1956         .result_num_fields = 8,
1957         .encap_num_fields = 0,
1958         .ident_start_idx = 33,
1959         .ident_nums = 0,
1960         .mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,
1961         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO
1962         },
1963         { /* class_tid: 19, wh_plus, table: int_em_0 */
1964         .resource_func = BNXT_ULP_RESOURCE_FUNC_INT_EM_TABLE,
1965         .resource_type = TF_MEM_INTERNAL,
1966         .mem_type_opcode = BNXT_ULP_MEM_TYPE_OPCODE_EXECUTE_IF_INT,
1967         .direction = TF_DIR_RX,
1968         .key_start_idx = 1207,
1969         .blob_key_bit_size = 112,
1970         .key_bit_size = 112,
1971         .key_num_fields = 8,
1972         .result_start_idx = 818,
1973         .result_bit_size = 64,
1974         .result_num_fields = 9,
1975         .encap_num_fields = 0,
1976         .ident_start_idx = 33,
1977         .ident_nums = 0,
1978         .mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,
1979         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES
1980         },
1981         { /* class_tid: 19, wh_plus, table: ext_em_0 */
1982         .resource_func = BNXT_ULP_RESOURCE_FUNC_EXT_EM_TABLE,
1983         .resource_type = TF_MEM_EXTERNAL,
1984         .mem_type_opcode = BNXT_ULP_MEM_TYPE_OPCODE_EXECUTE_IF_EXT,
1985         .direction = TF_DIR_RX,
1986         .key_start_idx = 1215,
1987         .blob_key_bit_size = 448,
1988         .key_bit_size = 448,
1989         .key_num_fields = 8,
1990         .result_start_idx = 827,
1991         .result_bit_size = 64,
1992         .result_num_fields = 9,
1993         .encap_num_fields = 0,
1994         .ident_start_idx = 33,
1995         .ident_nums = 0,
1996         .mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,
1997         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES
1998         },
1999         { /* class_tid: 20, wh_plus, table: l2_cntxt_cache_0 */
2000         .resource_func = BNXT_ULP_RESOURCE_FUNC_INVALID,
2001         .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_LOW,
2002         .resource_sub_type =
2003                 BNXT_ULP_RESOURCE_SUB_TYPE_CACHE_TYPE_L2_CNTXT_TCAM,
2004         .direction = TF_DIR_TX,
2005         .key_start_idx = 1223,
2006         .blob_key_bit_size = 8,
2007         .key_bit_size = 8,
2008         .key_num_fields = 1,
2009         .result_start_idx = 836,
2010         .result_bit_size = 10,
2011         .result_num_fields = 1,
2012         .encap_num_fields = 0,
2013         .ident_start_idx = 33,
2014         .ident_nums = 1
2015         },
2016         { /* class_tid: 20, wh_plus, table: l2_cntxt_tcam_0 */
2017         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
2018         .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_LOW,
2019         .direction = TF_DIR_TX,
2020         .tbl_opcode = BNXT_ULP_TCAM_TBL_OPC_ALLOC_WR_REGFILE,
2021         .tbl_operand = BNXT_ULP_REGFILE_INDEX_L2_CNTXT_TCAM_INDEX_0,
2022         .priority = BNXT_ULP_PRIORITY_LEVEL_0,
2023         .key_start_idx = 1224,
2024         .blob_key_bit_size = 167,
2025         .key_bit_size = 167,
2026         .key_num_fields = 13,
2027         .result_start_idx = 837,
2028         .result_bit_size = 64,
2029         .result_num_fields = 13,
2030         .encap_num_fields = 0,
2031         .ident_start_idx = 34,
2032         .ident_nums = 0,
2033         .mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,
2034         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO
2035         },
2036         { /* class_tid: 20, wh_plus, table: profile_tcam_cache_0 */
2037         .resource_func = BNXT_ULP_RESOURCE_FUNC_INVALID,
2038         .resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,
2039         .resource_sub_type =
2040                 BNXT_ULP_RESOURCE_SUB_TYPE_CACHE_TYPE_PROFILE_TCAM,
2041         .direction = TF_DIR_TX,
2042         .key_start_idx = 1237,
2043         .blob_key_bit_size = 16,
2044         .key_bit_size = 16,
2045         .key_num_fields = 3,
2046         .result_start_idx = 850,
2047         .result_bit_size = 10,
2048         .result_num_fields = 1,
2049         .encap_num_fields = 0,
2050         .ident_start_idx = 34,
2051         .ident_nums = 1
2052         },
2053         { /* class_tid: 20, wh_plus, table: profile_tcam_0 */
2054         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
2055         .resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,
2056         .direction = TF_DIR_TX,
2057         .tbl_opcode = BNXT_ULP_TCAM_TBL_OPC_ALLOC_WR_REGFILE,
2058         .tbl_operand = BNXT_ULP_REGFILE_INDEX_PROFILE_TCAM_INDEX_0,
2059         .priority = BNXT_ULP_PRIORITY_LEVEL_0,
2060         .key_start_idx = 1240,
2061         .blob_key_bit_size = 81,
2062         .key_bit_size = 81,
2063         .key_num_fields = 43,
2064         .result_start_idx = 851,
2065         .result_bit_size = 38,
2066         .result_num_fields = 8,
2067         .encap_num_fields = 0,
2068         .ident_start_idx = 35,
2069         .ident_nums = 0,
2070         .mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,
2071         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO
2072         },
2073         { /* class_tid: 20, wh_plus, table: ext_em_0 */
2074         .resource_func = BNXT_ULP_RESOURCE_FUNC_EXT_EM_TABLE,
2075         .resource_type = TF_MEM_EXTERNAL,
2076         .mem_type_opcode = BNXT_ULP_MEM_TYPE_OPCODE_EXECUTE_IF_EXT,
2077         .direction = TF_DIR_TX,
2078         .key_start_idx = 1283,
2079         .blob_key_bit_size = 448,
2080         .key_bit_size = 448,
2081         .key_num_fields = 11,
2082         .result_start_idx = 859,
2083         .result_bit_size = 64,
2084         .result_num_fields = 9,
2085         .encap_num_fields = 0,
2086         .ident_start_idx = 35,
2087         .ident_nums = 0,
2088         .mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_SET_IF_MARK_ACTION,
2089         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES
2090         },
2091         { /* class_tid: 20, wh_plus, table: int_em_0 */
2092         .resource_func = BNXT_ULP_RESOURCE_FUNC_INT_EM_TABLE,
2093         .resource_type = TF_MEM_INTERNAL,
2094         .mem_type_opcode = BNXT_ULP_MEM_TYPE_OPCODE_EXECUTE_IF_INT,
2095         .direction = TF_DIR_TX,
2096         .key_start_idx = 1294,
2097         .blob_key_bit_size = 200,
2098         .key_bit_size = 200,
2099         .key_num_fields = 11,
2100         .result_start_idx = 868,
2101         .result_bit_size = 64,
2102         .result_num_fields = 9,
2103         .encap_num_fields = 0,
2104         .ident_start_idx = 35,
2105         .ident_nums = 0,
2106         .mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_SET_IF_MARK_ACTION,
2107         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES
2108         },
2109         { /* class_tid: 21, wh_plus, table: l2_cntxt_cache_0 */
2110         .resource_func = BNXT_ULP_RESOURCE_FUNC_INVALID,
2111         .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_LOW,
2112         .resource_sub_type =
2113                 BNXT_ULP_RESOURCE_SUB_TYPE_CACHE_TYPE_L2_CNTXT_TCAM,
2114         .direction = TF_DIR_TX,
2115         .key_start_idx = 1305,
2116         .blob_key_bit_size = 8,
2117         .key_bit_size = 8,
2118         .key_num_fields = 1,
2119         .result_start_idx = 877,
2120         .result_bit_size = 10,
2121         .result_num_fields = 1,
2122         .encap_num_fields = 0,
2123         .ident_start_idx = 35,
2124         .ident_nums = 1
2125         },
2126         { /* class_tid: 21, wh_plus, table: l2_cntxt_tcam_0 */
2127         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
2128         .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_LOW,
2129         .direction = TF_DIR_TX,
2130         .tbl_opcode = BNXT_ULP_TCAM_TBL_OPC_ALLOC_WR_REGFILE,
2131         .tbl_operand = BNXT_ULP_REGFILE_INDEX_L2_CNTXT_TCAM_INDEX_0,
2132         .priority = BNXT_ULP_PRIORITY_LEVEL_0,
2133         .key_start_idx = 1306,
2134         .blob_key_bit_size = 167,
2135         .key_bit_size = 167,
2136         .key_num_fields = 13,
2137         .result_start_idx = 878,
2138         .result_bit_size = 64,
2139         .result_num_fields = 13,
2140         .encap_num_fields = 0,
2141         .ident_start_idx = 36,
2142         .ident_nums = 0,
2143         .mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,
2144         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO
2145         },
2146         { /* class_tid: 21, wh_plus, table: profile_tcam_cache_0 */
2147         .resource_func = BNXT_ULP_RESOURCE_FUNC_INVALID,
2148         .resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,
2149         .resource_sub_type =
2150                 BNXT_ULP_RESOURCE_SUB_TYPE_CACHE_TYPE_PROFILE_TCAM,
2151         .direction = TF_DIR_TX,
2152         .key_start_idx = 1319,
2153         .blob_key_bit_size = 16,
2154         .key_bit_size = 16,
2155         .key_num_fields = 3,
2156         .result_start_idx = 891,
2157         .result_bit_size = 10,
2158         .result_num_fields = 1,
2159         .encap_num_fields = 0,
2160         .ident_start_idx = 36,
2161         .ident_nums = 1
2162         },
2163         { /* class_tid: 21, wh_plus, table: profile_tcam_0 */
2164         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
2165         .resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,
2166         .direction = TF_DIR_TX,
2167         .tbl_opcode = BNXT_ULP_TCAM_TBL_OPC_ALLOC_WR_REGFILE,
2168         .tbl_operand = BNXT_ULP_REGFILE_INDEX_PROFILE_TCAM_INDEX_0,
2169         .priority = BNXT_ULP_PRIORITY_LEVEL_0,
2170         .key_start_idx = 1322,
2171         .blob_key_bit_size = 81,
2172         .key_bit_size = 81,
2173         .key_num_fields = 43,
2174         .result_start_idx = 892,
2175         .result_bit_size = 38,
2176         .result_num_fields = 8,
2177         .encap_num_fields = 0,
2178         .ident_start_idx = 37,
2179         .ident_nums = 0,
2180         .mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,
2181         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO
2182         },
2183         { /* class_tid: 21, wh_plus, table: ext_em_0 */
2184         .resource_func = BNXT_ULP_RESOURCE_FUNC_EXT_EM_TABLE,
2185         .resource_type = TF_MEM_EXTERNAL,
2186         .mem_type_opcode = BNXT_ULP_MEM_TYPE_OPCODE_EXECUTE_IF_EXT,
2187         .direction = TF_DIR_TX,
2188         .key_start_idx = 1365,
2189         .blob_key_bit_size = 448,
2190         .key_bit_size = 448,
2191         .key_num_fields = 11,
2192         .result_start_idx = 900,
2193         .result_bit_size = 64,
2194         .result_num_fields = 9,
2195         .encap_num_fields = 0,
2196         .ident_start_idx = 37,
2197         .ident_nums = 0,
2198         .mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_SET_IF_MARK_ACTION,
2199         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES
2200         },
2201         { /* class_tid: 21, wh_plus, table: int_em_0 */
2202         .resource_func = BNXT_ULP_RESOURCE_FUNC_INT_EM_TABLE,
2203         .resource_type = TF_MEM_INTERNAL,
2204         .mem_type_opcode = BNXT_ULP_MEM_TYPE_OPCODE_EXECUTE_IF_INT,
2205         .direction = TF_DIR_TX,
2206         .key_start_idx = 1376,
2207         .blob_key_bit_size = 200,
2208         .key_bit_size = 200,
2209         .key_num_fields = 11,
2210         .result_start_idx = 909,
2211         .result_bit_size = 64,
2212         .result_num_fields = 9,
2213         .encap_num_fields = 0,
2214         .ident_start_idx = 37,
2215         .ident_nums = 0,
2216         .mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_SET_IF_MARK_ACTION,
2217         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES
2218         },
2219         { /* class_tid: 22, wh_plus, table: l2_cntxt_cache_0 */
2220         .resource_func = BNXT_ULP_RESOURCE_FUNC_INVALID,
2221         .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_LOW,
2222         .resource_sub_type =
2223                 BNXT_ULP_RESOURCE_SUB_TYPE_CACHE_TYPE_L2_CNTXT_TCAM,
2224         .direction = TF_DIR_TX,
2225         .key_start_idx = 1387,
2226         .blob_key_bit_size = 8,
2227         .key_bit_size = 8,
2228         .key_num_fields = 1,
2229         .result_start_idx = 918,
2230         .result_bit_size = 10,
2231         .result_num_fields = 1,
2232         .encap_num_fields = 0,
2233         .ident_start_idx = 37,
2234         .ident_nums = 1
2235         },
2236         { /* class_tid: 22, wh_plus, table: l2_cntxt_0 */
2237         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
2238         .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_LOW,
2239         .direction = TF_DIR_TX,
2240         .tbl_opcode = BNXT_ULP_TCAM_TBL_OPC_ALLOC_WR_REGFILE,
2241         .tbl_operand = BNXT_ULP_REGFILE_INDEX_L2_CNTXT_TCAM_INDEX_0,
2242         .priority = BNXT_ULP_PRIORITY_LEVEL_0,
2243         .key_start_idx = 1388,
2244         .blob_key_bit_size = 167,
2245         .key_bit_size = 167,
2246         .key_num_fields = 13,
2247         .result_start_idx = 919,
2248         .result_bit_size = 64,
2249         .result_num_fields = 13,
2250         .encap_num_fields = 0,
2251         .ident_start_idx = 38,
2252         .ident_nums = 0,
2253         .mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,
2254         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO
2255         },
2256         { /* class_tid: 22, wh_plus, table: profile_tcam_cache_0 */
2257         .resource_func = BNXT_ULP_RESOURCE_FUNC_INVALID,
2258         .resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,
2259         .resource_sub_type =
2260                 BNXT_ULP_RESOURCE_SUB_TYPE_CACHE_TYPE_PROFILE_TCAM,
2261         .direction = TF_DIR_TX,
2262         .key_start_idx = 1401,
2263         .blob_key_bit_size = 16,
2264         .key_bit_size = 16,
2265         .key_num_fields = 3,
2266         .result_start_idx = 932,
2267         .result_bit_size = 10,
2268         .result_num_fields = 1,
2269         .encap_num_fields = 0,
2270         .ident_start_idx = 38,
2271         .ident_nums = 1
2272         },
2273         { /* class_tid: 22, wh_plus, table: profile_tcam_0 */
2274         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
2275         .resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,
2276         .direction = TF_DIR_TX,
2277         .tbl_opcode = BNXT_ULP_TCAM_TBL_OPC_ALLOC_WR_REGFILE,
2278         .tbl_operand = BNXT_ULP_REGFILE_INDEX_PROFILE_TCAM_INDEX_0,
2279         .priority = BNXT_ULP_PRIORITY_LEVEL_0,
2280         .key_start_idx = 1404,
2281         .blob_key_bit_size = 81,
2282         .key_bit_size = 81,
2283         .key_num_fields = 43,
2284         .result_start_idx = 933,
2285         .result_bit_size = 38,
2286         .result_num_fields = 8,
2287         .encap_num_fields = 0,
2288         .ident_start_idx = 39,
2289         .ident_nums = 0,
2290         .mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,
2291         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO
2292         },
2293         { /* class_tid: 22, wh_plus, table: ext_em_0 */
2294         .resource_func = BNXT_ULP_RESOURCE_FUNC_EXT_EM_TABLE,
2295         .resource_type = TF_MEM_EXTERNAL,
2296         .mem_type_opcode = BNXT_ULP_MEM_TYPE_OPCODE_EXECUTE_IF_EXT,
2297         .direction = TF_DIR_TX,
2298         .key_start_idx = 1447,
2299         .blob_key_bit_size = 448,
2300         .key_bit_size = 448,
2301         .key_num_fields = 11,
2302         .result_start_idx = 941,
2303         .result_bit_size = 64,
2304         .result_num_fields = 9,
2305         .encap_num_fields = 0,
2306         .ident_start_idx = 39,
2307         .ident_nums = 0,
2308         .mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_SET_IF_MARK_ACTION,
2309         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES
2310         },
2311         { /* class_tid: 22, wh_plus, table: int_em_0 */
2312         .resource_func = BNXT_ULP_RESOURCE_FUNC_INT_EM_TABLE,
2313         .resource_type = TF_MEM_INTERNAL,
2314         .mem_type_opcode = BNXT_ULP_MEM_TYPE_OPCODE_EXECUTE_IF_INT,
2315         .direction = TF_DIR_TX,
2316         .key_start_idx = 1458,
2317         .blob_key_bit_size = 392,
2318         .key_bit_size = 392,
2319         .key_num_fields = 11,
2320         .result_start_idx = 950,
2321         .result_bit_size = 64,
2322         .result_num_fields = 9,
2323         .encap_num_fields = 0,
2324         .ident_start_idx = 39,
2325         .ident_nums = 0,
2326         .mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_SET_IF_MARK_ACTION,
2327         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES
2328         },
2329         { /* class_tid: 23, wh_plus, table: l2_cntxt_cache_0 */
2330         .resource_func = BNXT_ULP_RESOURCE_FUNC_INVALID,
2331         .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_LOW,
2332         .resource_sub_type =
2333                 BNXT_ULP_RESOURCE_SUB_TYPE_CACHE_TYPE_L2_CNTXT_TCAM,
2334         .direction = TF_DIR_TX,
2335         .key_start_idx = 1469,
2336         .blob_key_bit_size = 8,
2337         .key_bit_size = 8,
2338         .key_num_fields = 1,
2339         .result_start_idx = 959,
2340         .result_bit_size = 10,
2341         .result_num_fields = 1,
2342         .encap_num_fields = 0,
2343         .ident_start_idx = 39,
2344         .ident_nums = 1
2345         },
2346         { /* class_tid: 23, wh_plus, table: l2_cntxt_tcam_0 */
2347         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
2348         .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_LOW,
2349         .direction = TF_DIR_TX,
2350         .tbl_opcode = BNXT_ULP_TCAM_TBL_OPC_ALLOC_WR_REGFILE,
2351         .tbl_operand = BNXT_ULP_REGFILE_INDEX_L2_CNTXT_TCAM_INDEX_0,
2352         .priority = BNXT_ULP_PRIORITY_LEVEL_0,
2353         .key_start_idx = 1470,
2354         .blob_key_bit_size = 167,
2355         .key_bit_size = 167,
2356         .key_num_fields = 13,
2357         .result_start_idx = 960,
2358         .result_bit_size = 64,
2359         .result_num_fields = 13,
2360         .encap_num_fields = 0,
2361         .ident_start_idx = 40,
2362         .ident_nums = 0,
2363         .mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,
2364         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO
2365         },
2366         { /* class_tid: 23, wh_plus, table: profile_tcam_cache_0 */
2367         .resource_func = BNXT_ULP_RESOURCE_FUNC_INVALID,
2368         .resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,
2369         .resource_sub_type =
2370                 BNXT_ULP_RESOURCE_SUB_TYPE_CACHE_TYPE_PROFILE_TCAM,
2371         .direction = TF_DIR_TX,
2372         .key_start_idx = 1483,
2373         .blob_key_bit_size = 16,
2374         .key_bit_size = 16,
2375         .key_num_fields = 3,
2376         .result_start_idx = 973,
2377         .result_bit_size = 10,
2378         .result_num_fields = 1,
2379         .encap_num_fields = 0,
2380         .ident_start_idx = 40,
2381         .ident_nums = 1
2382         },
2383         { /* class_tid: 23, wh_plus, table: profile_tcam_0 */
2384         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
2385         .resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,
2386         .direction = TF_DIR_TX,
2387         .tbl_opcode = BNXT_ULP_TCAM_TBL_OPC_ALLOC_WR_REGFILE,
2388         .tbl_operand = BNXT_ULP_REGFILE_INDEX_PROFILE_TCAM_INDEX_0,
2389         .priority = BNXT_ULP_PRIORITY_LEVEL_0,
2390         .key_start_idx = 1486,
2391         .blob_key_bit_size = 81,
2392         .key_bit_size = 81,
2393         .key_num_fields = 43,
2394         .result_start_idx = 974,
2395         .result_bit_size = 38,
2396         .result_num_fields = 8,
2397         .encap_num_fields = 0,
2398         .ident_start_idx = 41,
2399         .ident_nums = 0,
2400         .mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,
2401         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO
2402         },
2403         { /* class_tid: 23, wh_plus, table: ext_em_0 */
2404         .resource_func = BNXT_ULP_RESOURCE_FUNC_EXT_EM_TABLE,
2405         .resource_type = TF_MEM_EXTERNAL,
2406         .mem_type_opcode = BNXT_ULP_MEM_TYPE_OPCODE_EXECUTE_IF_EXT,
2407         .direction = TF_DIR_TX,
2408         .key_start_idx = 1529,
2409         .blob_key_bit_size = 448,
2410         .key_bit_size = 448,
2411         .key_num_fields = 11,
2412         .result_start_idx = 982,
2413         .result_bit_size = 64,
2414         .result_num_fields = 9,
2415         .encap_num_fields = 0,
2416         .ident_start_idx = 41,
2417         .ident_nums = 0,
2418         .mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_SET_IF_MARK_ACTION,
2419         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES
2420         },
2421         { /* class_tid: 23, wh_plus, table: int_em_0 */
2422         .resource_func = BNXT_ULP_RESOURCE_FUNC_INT_EM_TABLE,
2423         .resource_type = TF_MEM_INTERNAL,
2424         .mem_type_opcode = BNXT_ULP_MEM_TYPE_OPCODE_EXECUTE_IF_INT,
2425         .direction = TF_DIR_TX,
2426         .key_start_idx = 1540,
2427         .blob_key_bit_size = 392,
2428         .key_bit_size = 392,
2429         .key_num_fields = 11,
2430         .result_start_idx = 991,
2431         .result_bit_size = 64,
2432         .result_num_fields = 9,
2433         .encap_num_fields = 0,
2434         .ident_start_idx = 41,
2435         .ident_nums = 0,
2436         .mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_SET_IF_MARK_ACTION,
2437         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES
2438         },
2439         { /* class_tid: 24, wh_plus, table: l2_cntxt_tcam_0 */
2440         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
2441         .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_HIGH,
2442         .direction = TF_DIR_TX,
2443         .tbl_opcode = BNXT_ULP_TCAM_TBL_OPC_SRCH_ALLOC_WR_REGFILE,
2444         .tbl_operand = BNXT_ULP_REGFILE_INDEX_L2_CNTXT_TCAM_INDEX_0,
2445         .priority = BNXT_ULP_PRIORITY_LEVEL_0,
2446         .key_start_idx = 1551,
2447         .blob_key_bit_size = 167,
2448         .key_bit_size = 167,
2449         .key_num_fields = 13,
2450         .result_start_idx = 1000,
2451         .result_bit_size = 64,
2452         .result_num_fields = 13,
2453         .encap_num_fields = 0,
2454         .ident_start_idx = 41,
2455         .ident_nums = 1,
2456         .mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,
2457         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO
2458         },
2459         { /* class_tid: 24, wh_plus, table: profile_tcam_cache_0 */
2460         .resource_func = BNXT_ULP_RESOURCE_FUNC_INVALID,
2461         .resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,
2462         .resource_sub_type =
2463                 BNXT_ULP_RESOURCE_SUB_TYPE_CACHE_TYPE_PROFILE_TCAM,
2464         .direction = TF_DIR_TX,
2465         .key_start_idx = 1564,
2466         .blob_key_bit_size = 16,
2467         .key_bit_size = 16,
2468         .key_num_fields = 3,
2469         .result_start_idx = 1013,
2470         .result_bit_size = 10,
2471         .result_num_fields = 1,
2472         .encap_num_fields = 0,
2473         .ident_start_idx = 42,
2474         .ident_nums = 1
2475         },
2476         { /* class_tid: 24, wh_plus, table: profile_tcam_0 */
2477         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
2478         .resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,
2479         .direction = TF_DIR_TX,
2480         .tbl_opcode = BNXT_ULP_TCAM_TBL_OPC_ALLOC_WR_REGFILE,
2481         .tbl_operand = BNXT_ULP_REGFILE_INDEX_PROFILE_TCAM_INDEX_0,
2482         .priority = BNXT_ULP_PRIORITY_LEVEL_0,
2483         .key_start_idx = 1567,
2484         .blob_key_bit_size = 81,
2485         .key_bit_size = 81,
2486         .key_num_fields = 43,
2487         .result_start_idx = 1014,
2488         .result_bit_size = 38,
2489         .result_num_fields = 8,
2490         .encap_num_fields = 0,
2491         .ident_start_idx = 43,
2492         .ident_nums = 0,
2493         .mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,
2494         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO
2495         },
2496         { /* class_tid: 24, wh_plus, table: ext_em_0 */
2497         .resource_func = BNXT_ULP_RESOURCE_FUNC_EXT_EM_TABLE,
2498         .resource_type = TF_MEM_EXTERNAL,
2499         .mem_type_opcode = BNXT_ULP_MEM_TYPE_OPCODE_EXECUTE_IF_EXT,
2500         .direction = TF_DIR_TX,
2501         .key_start_idx = 1610,
2502         .blob_key_bit_size = 448,
2503         .key_bit_size = 448,
2504         .key_num_fields = 7,
2505         .result_start_idx = 1022,
2506         .result_bit_size = 64,
2507         .result_num_fields = 9,
2508         .encap_num_fields = 0,
2509         .ident_start_idx = 43,
2510         .ident_nums = 0,
2511         .mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,
2512         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES
2513         },
2514         { /* class_tid: 24, wh_plus, table: int_em_0 */
2515         .resource_func = BNXT_ULP_RESOURCE_FUNC_INT_EM_TABLE,
2516         .resource_type = TF_MEM_INTERNAL,
2517         .mem_type_opcode = BNXT_ULP_MEM_TYPE_OPCODE_EXECUTE_IF_INT,
2518         .direction = TF_DIR_TX,
2519         .key_start_idx = 1617,
2520         .blob_key_bit_size = 104,
2521         .key_bit_size = 104,
2522         .key_num_fields = 7,
2523         .result_start_idx = 1031,
2524         .result_bit_size = 64,
2525         .result_num_fields = 9,
2526         .encap_num_fields = 0,
2527         .ident_start_idx = 43,
2528         .ident_nums = 0,
2529         .mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,
2530         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES
2531         },
2532         { /* class_tid: 25, wh_plus, table: l2_cntxt_tcam_0 */
2533         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
2534         .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_HIGH,
2535         .direction = TF_DIR_TX,
2536         .tbl_opcode = BNXT_ULP_TCAM_TBL_OPC_SRCH_ALLOC_WR_REGFILE,
2537         .tbl_operand = BNXT_ULP_REGFILE_INDEX_L2_CNTXT_TCAM_INDEX_0,
2538         .priority = BNXT_ULP_PRIORITY_LEVEL_0,
2539         .key_start_idx = 1624,
2540         .blob_key_bit_size = 167,
2541         .key_bit_size = 167,
2542         .key_num_fields = 13,
2543         .result_start_idx = 1040,
2544         .result_bit_size = 64,
2545         .result_num_fields = 13,
2546         .encap_num_fields = 0,
2547         .ident_start_idx = 43,
2548         .ident_nums = 1,
2549         .mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,
2550         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO
2551         },
2552         { /* class_tid: 25, wh_plus, table: profile_tcam_cache_0 */
2553         .resource_func = BNXT_ULP_RESOURCE_FUNC_INVALID,
2554         .resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,
2555         .resource_sub_type =
2556                 BNXT_ULP_RESOURCE_SUB_TYPE_CACHE_TYPE_PROFILE_TCAM,
2557         .direction = TF_DIR_TX,
2558         .key_start_idx = 1637,
2559         .blob_key_bit_size = 16,
2560         .key_bit_size = 16,
2561         .key_num_fields = 3,
2562         .result_start_idx = 1053,
2563         .result_bit_size = 10,
2564         .result_num_fields = 1,
2565         .encap_num_fields = 0,
2566         .ident_start_idx = 44,
2567         .ident_nums = 1
2568         },
2569         { /* class_tid: 25, wh_plus, table: profile_tcam_0 */
2570         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
2571         .resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,
2572         .direction = TF_DIR_TX,
2573         .tbl_opcode = BNXT_ULP_TCAM_TBL_OPC_ALLOC_WR_REGFILE,
2574         .tbl_operand = BNXT_ULP_REGFILE_INDEX_PROFILE_TCAM_INDEX_0,
2575         .priority = BNXT_ULP_PRIORITY_LEVEL_0,
2576         .key_start_idx = 1640,
2577         .blob_key_bit_size = 81,
2578         .key_bit_size = 81,
2579         .key_num_fields = 43,
2580         .result_start_idx = 1054,
2581         .result_bit_size = 38,
2582         .result_num_fields = 8,
2583         .encap_num_fields = 0,
2584         .ident_start_idx = 45,
2585         .ident_nums = 0,
2586         .mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,
2587         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO
2588         },
2589         { /* class_tid: 25, wh_plus, table: ext_em_0 */
2590         .resource_func = BNXT_ULP_RESOURCE_FUNC_EXT_EM_TABLE,
2591         .resource_type = TF_MEM_EXTERNAL,
2592         .mem_type_opcode = BNXT_ULP_MEM_TYPE_OPCODE_EXECUTE_IF_EXT,
2593         .direction = TF_DIR_TX,
2594         .key_start_idx = 1683,
2595         .blob_key_bit_size = 448,
2596         .key_bit_size = 448,
2597         .key_num_fields = 7,
2598         .result_start_idx = 1062,
2599         .result_bit_size = 64,
2600         .result_num_fields = 9,
2601         .encap_num_fields = 0,
2602         .ident_start_idx = 45,
2603         .ident_nums = 0,
2604         .mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,
2605         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES
2606         },
2607         { /* class_tid: 25, wh_plus, table: int_em_0 */
2608         .resource_func = BNXT_ULP_RESOURCE_FUNC_INT_EM_TABLE,
2609         .resource_type = TF_MEM_INTERNAL,
2610         .mem_type_opcode = BNXT_ULP_MEM_TYPE_OPCODE_EXECUTE_IF_INT,
2611         .direction = TF_DIR_TX,
2612         .key_start_idx = 1690,
2613         .blob_key_bit_size = 104,
2614         .key_bit_size = 104,
2615         .key_num_fields = 7,
2616         .result_start_idx = 1071,
2617         .result_bit_size = 64,
2618         .result_num_fields = 9,
2619         .encap_num_fields = 0,
2620         .ident_start_idx = 45,
2621         .ident_nums = 0,
2622         .mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,
2623         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES
2624         }
2625 };
2626
2627 struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {
2628         /* class_tid: 1, wh_plus, table: l2_cntxt_cache_0 */
2629         {
2630         .description = "svif",
2631         .field_bit_size = 8,
2632         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2633         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,
2634         .spec_operand = {
2635                 (BNXT_ULP_CF_IDX_PHY_PORT_SVIF >> 8) & 0xff,
2636                 BNXT_ULP_CF_IDX_PHY_PORT_SVIF & 0xff,
2637                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
2638                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
2639         },
2640         /* class_tid: 1, wh_plus, table: l2_cntxt_tcam_0 */
2641         {
2642         .description = "l2_ivlan_vid",
2643         .field_bit_size = 12,
2644         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2645         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2646         },
2647         {
2648         .description = "l2_ovlan_vid",
2649         .field_bit_size = 12,
2650         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2651         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2652         },
2653         {
2654         .description = "mac0_l2_dst",
2655         .field_bit_size = 48,
2656         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2657         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2658         },
2659         {
2660         .description = "svif",
2661         .field_bit_size = 8,
2662         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
2663         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
2664                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
2665         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,
2666         .spec_operand = {
2667                 (BNXT_ULP_CF_IDX_PHY_PORT_SVIF >> 8) & 0xff,
2668                 BNXT_ULP_CF_IDX_PHY_PORT_SVIF & 0xff,
2669                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
2670                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
2671         },
2672         {
2673         .description = "sparif",
2674         .field_bit_size = 4,
2675         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2676         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2677         },
2678         {
2679         .description = "tl2_ivlan_vid",
2680         .field_bit_size = 12,
2681         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2682         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2683         },
2684         {
2685         .description = "tl2_ovlan_vid",
2686         .field_bit_size = 12,
2687         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2688         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2689         },
2690         {
2691         .description = "mac1_tl2_dst",
2692         .field_bit_size = 48,
2693         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2694         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2695         },
2696         {
2697         .description = "l2_num_vtags",
2698         .field_bit_size = 2,
2699         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2700         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2701         },
2702         {
2703         .description = "tl2_num_vtags",
2704         .field_bit_size = 2,
2705         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2706         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2707         },
2708         {
2709         .description = "tun_hdr_type",
2710         .field_bit_size = 4,
2711         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2712         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2713         },
2714         {
2715         .description = "key_type",
2716         .field_bit_size = 2,
2717         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2718         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2719         },
2720         {
2721         .description = "valid",
2722         .field_bit_size = 1,
2723         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
2724         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
2725                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
2726         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
2727         .spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
2728                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
2729         },
2730         /* class_tid: 2, wh_plus, table: l2_cntxt_tcam_vfr_0 */
2731         {
2732         .description = "l2_ivlan_vid",
2733         .field_bit_size = 12,
2734         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2735         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2736         },
2737         {
2738         .description = "l2_ovlan_vid",
2739         .field_bit_size = 12,
2740         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2741         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2742         },
2743         {
2744         .description = "mac0_l2_addr",
2745         .field_bit_size = 48,
2746         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2747         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2748         },
2749         {
2750         .description = "svif",
2751         .field_bit_size = 8,
2752         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
2753         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
2754                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
2755         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,
2756         .spec_operand = {
2757                 (BNXT_ULP_CF_IDX_DRV_FUNC_SVIF >> 8) & 0xff,
2758                 BNXT_ULP_CF_IDX_DRV_FUNC_SVIF & 0xff,
2759                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
2760                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
2761         },
2762         {
2763         .description = "sparif",
2764         .field_bit_size = 4,
2765         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2766         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2767         },
2768         {
2769         .description = "tl2_ivlan_vid",
2770         .field_bit_size = 12,
2771         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2772         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2773         },
2774         {
2775         .description = "tl2_ovlan_vid",
2776         .field_bit_size = 12,
2777         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2778         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2779         },
2780         {
2781         .description = "mac1_tl2_addr",
2782         .field_bit_size = 48,
2783         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2784         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2785         },
2786         {
2787         .description = "l2_num_vtags",
2788         .field_bit_size = 2,
2789         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2790         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2791         },
2792         {
2793         .description = "tl2_num_vtags",
2794         .field_bit_size = 2,
2795         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2796         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2797         },
2798         {
2799         .description = "tun_hdr_type",
2800         .field_bit_size = 4,
2801         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2802         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2803         },
2804         {
2805         .description = "key_type",
2806         .field_bit_size = 2,
2807         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2808         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2809         },
2810         {
2811         .description = "valid",
2812         .field_bit_size = 1,
2813         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
2814         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
2815                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
2816         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
2817         .spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
2818                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
2819         },
2820         /* class_tid: 2, wh_plus, table: l2_cntxt_cache_0 */
2821         {
2822         .description = "svif",
2823         .field_bit_size = 8,
2824         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2825         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,
2826         .spec_operand = {
2827                 (BNXT_ULP_CF_IDX_DRV_FUNC_SVIF >> 8) & 0xff,
2828                 BNXT_ULP_CF_IDX_DRV_FUNC_SVIF & 0xff,
2829                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
2830                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
2831         },
2832         /* class_tid: 2, wh_plus, table: l2_cntxt_tcam_0 */
2833         {
2834         .description = "l2_ivlan_vid",
2835         .field_bit_size = 12,
2836         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2837         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2838         },
2839         {
2840         .description = "l2_ovlan_vid",
2841         .field_bit_size = 12,
2842         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2843         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2844         },
2845         {
2846         .description = "mac0_l2_addr",
2847         .field_bit_size = 48,
2848         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2849         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2850         },
2851         {
2852         .description = "svif",
2853         .field_bit_size = 8,
2854         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
2855         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
2856                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
2857         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,
2858         .spec_operand = {
2859                 (BNXT_ULP_CF_IDX_DRV_FUNC_SVIF >> 8) & 0xff,
2860                 BNXT_ULP_CF_IDX_DRV_FUNC_SVIF & 0xff,
2861                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
2862                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
2863         },
2864         {
2865         .description = "sparif",
2866         .field_bit_size = 4,
2867         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2868         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2869         },
2870         {
2871         .description = "tl2_ivlan_vid",
2872         .field_bit_size = 12,
2873         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2874         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2875         },
2876         {
2877         .description = "tl2_ovlan_vid",
2878         .field_bit_size = 12,
2879         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2880         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2881         },
2882         {
2883         .description = "mac1_tl2_addr",
2884         .field_bit_size = 48,
2885         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2886         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2887         },
2888         {
2889         .description = "l2_num_vtags",
2890         .field_bit_size = 2,
2891         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2892         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2893         },
2894         {
2895         .description = "tl2_num_vtags",
2896         .field_bit_size = 2,
2897         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2898         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2899         },
2900         {
2901         .description = "tun_hdr_type",
2902         .field_bit_size = 4,
2903         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2904         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2905         },
2906         {
2907         .description = "key_type",
2908         .field_bit_size = 2,
2909         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2910         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2911         },
2912         {
2913         .description = "valid",
2914         .field_bit_size = 1,
2915         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
2916         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
2917                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
2918         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
2919         .spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
2920                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
2921         },
2922         /* class_tid: 3, wh_plus, table: egr_l2_cntxt_cache_0 */
2923         {
2924         .description = "svif",
2925         .field_bit_size = 8,
2926         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2927         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,
2928         .spec_operand = {
2929                 (BNXT_ULP_CF_IDX_DRV_FUNC_SVIF >> 8) & 0xff,
2930                 BNXT_ULP_CF_IDX_DRV_FUNC_SVIF & 0xff,
2931                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
2932                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
2933         },
2934         /* class_tid: 3, wh_plus, table: egr_l2_cntxt_tcam_0 */
2935         {
2936         .description = "l2_ivlan_vid",
2937         .field_bit_size = 12,
2938         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2939         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2940         },
2941         {
2942         .description = "l2_ovlan_vid",
2943         .field_bit_size = 12,
2944         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2945         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2946         },
2947         {
2948         .description = "mac0_l2_dst",
2949         .field_bit_size = 48,
2950         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2951         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2952         },
2953         {
2954         .description = "svif",
2955         .field_bit_size = 8,
2956         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
2957         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
2958                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
2959         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,
2960         .spec_operand = {
2961                 (BNXT_ULP_CF_IDX_DRV_FUNC_SVIF >> 8) & 0xff,
2962                 BNXT_ULP_CF_IDX_DRV_FUNC_SVIF & 0xff,
2963                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
2964                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
2965         },
2966         {
2967         .description = "sparif",
2968         .field_bit_size = 4,
2969         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2970         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2971         },
2972         {
2973         .description = "tl2_ivlan_vid",
2974         .field_bit_size = 12,
2975         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2976         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2977         },
2978         {
2979         .description = "tl2_ovlan_vid",
2980         .field_bit_size = 12,
2981         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2982         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2983         },
2984         {
2985         .description = "mac1_tl2_dst",
2986         .field_bit_size = 48,
2987         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2988         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2989         },
2990         {
2991         .description = "l2_num_vtags",
2992         .field_bit_size = 2,
2993         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2994         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2995         },
2996         {
2997         .description = "tl2_num_vtags",
2998         .field_bit_size = 2,
2999         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3000         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3001         },
3002         {
3003         .description = "tun_hdr_type",
3004         .field_bit_size = 4,
3005         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3006         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3007         },
3008         {
3009         .description = "key_type",
3010         .field_bit_size = 2,
3011         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3012         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3013         },
3014         {
3015         .description = "valid",
3016         .field_bit_size = 1,
3017         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
3018         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
3019                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
3020         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
3021         .spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
3022                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
3023         },
3024         /* class_tid: 3, wh_plus, table: ing_l2_cntxt_dtagged_0 */
3025         {
3026         .description = "l2_ivlan_vid",
3027         .field_bit_size = 12,
3028         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3029         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3030         },
3031         {
3032         .description = "l2_ovlan_vid",
3033         .field_bit_size = 12,
3034         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
3035         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
3036                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
3037         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,
3038         .spec_operand = {
3039                 (BNXT_ULP_CF_IDX_DEV_PORT_ID >> 8) & 0xff,
3040                 BNXT_ULP_CF_IDX_DEV_PORT_ID & 0xff,
3041                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
3042                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
3043         },
3044         {
3045         .description = "mac0_l2_dst",
3046         .field_bit_size = 48,
3047         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3048         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3049         },
3050         {
3051         .description = "svif",
3052         .field_bit_size = 8,
3053         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
3054         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
3055                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
3056         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,
3057         .spec_operand = {
3058                 (BNXT_ULP_CF_IDX_DRV_FUNC_SVIF >> 8) & 0xff,
3059                 BNXT_ULP_CF_IDX_DRV_FUNC_SVIF & 0xff,
3060                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
3061                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
3062         },
3063         {
3064         .description = "sparif",
3065         .field_bit_size = 4,
3066         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3067         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3068         },
3069         {
3070         .description = "tl2_ivlan_vid",
3071         .field_bit_size = 12,
3072         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3073         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3074         },
3075         {
3076         .description = "tl2_ovlan_vid",
3077         .field_bit_size = 12,
3078         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3079         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3080         },
3081         {
3082         .description = "mac1_tl2_dst",
3083         .field_bit_size = 48,
3084         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3085         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3086         },
3087         {
3088         .description = "l2_num_vtags",
3089         .field_bit_size = 2,
3090         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
3091         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
3092                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
3093         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
3094         .spec_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,
3095                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
3096         },
3097         {
3098         .description = "tl2_num_vtags",
3099         .field_bit_size = 2,
3100         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3101         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3102         },
3103         {
3104         .description = "tun_hdr_type",
3105         .field_bit_size = 4,
3106         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
3107         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
3108                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
3109         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
3110         .spec_operand = {
3111                 BNXT_ULP_SYM_TUN_HDR_TYPE_NONE,
3112                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
3113                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
3114         },
3115         {
3116         .description = "key_type",
3117         .field_bit_size = 2,
3118         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3119         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3120         },
3121         {
3122         .description = "valid",
3123         .field_bit_size = 1,
3124         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
3125         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
3126                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
3127         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
3128         .spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
3129                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
3130         },
3131         /* class_tid: 3, wh_plus, table: ing_l2_cntxt_stagged_0 */
3132         {
3133         .description = "l2_ivlan_vid",
3134         .field_bit_size = 12,
3135         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
3136         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
3137                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
3138         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,
3139         .spec_operand = {
3140                 (BNXT_ULP_CF_IDX_DEV_PORT_ID >> 8) & 0xff,
3141                 BNXT_ULP_CF_IDX_DEV_PORT_ID & 0xff,
3142                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
3143                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
3144         },
3145         {
3146         .description = "l2_ovlan_vid",
3147         .field_bit_size = 12,
3148         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3149         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3150         },
3151         {
3152         .description = "mac0_l2_dst",
3153         .field_bit_size = 48,
3154         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3155         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3156         },
3157         {
3158         .description = "svif",
3159         .field_bit_size = 8,
3160         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
3161         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
3162                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
3163         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,
3164         .spec_operand = {
3165                 (BNXT_ULP_CF_IDX_DRV_FUNC_SVIF >> 8) & 0xff,
3166                 BNXT_ULP_CF_IDX_DRV_FUNC_SVIF & 0xff,
3167                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
3168                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
3169         },
3170         {
3171         .description = "sparif",
3172         .field_bit_size = 4,
3173         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3174         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3175         },
3176         {
3177         .description = "tl2_ivlan_vid",
3178         .field_bit_size = 12,
3179         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3180         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3181         },
3182         {
3183         .description = "tl2_ovlan_vid",
3184         .field_bit_size = 12,
3185         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3186         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3187         },
3188         {
3189         .description = "mac1_tl2_dst",
3190         .field_bit_size = 48,
3191         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3192         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3193         },
3194         {
3195         .description = "l2_num_vtags",
3196         .field_bit_size = 2,
3197         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
3198         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
3199                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
3200         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
3201         .spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
3202                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
3203         },
3204         {
3205         .description = "tl2_num_vtags",
3206         .field_bit_size = 2,
3207         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3208         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3209         },
3210         {
3211         .description = "tun_hdr_type",
3212         .field_bit_size = 4,
3213         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
3214         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
3215                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
3216         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
3217         .spec_operand = {
3218                 BNXT_ULP_SYM_TUN_HDR_TYPE_NONE,
3219                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
3220                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
3221         },
3222         {
3223         .description = "key_type",
3224         .field_bit_size = 2,
3225         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3226         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3227         },
3228         {
3229         .description = "valid",
3230         .field_bit_size = 1,
3231         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
3232         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
3233                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
3234         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
3235         .spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
3236                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
3237         },
3238         /* class_tid: 4, wh_plus, table: egr_l2_cntxt_cache_0 */
3239         {
3240         .description = "svif",
3241         .field_bit_size = 8,
3242         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3243         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,
3244         .spec_operand = {
3245                 (BNXT_ULP_CF_IDX_VF_FUNC_SVIF >> 8) & 0xff,
3246                 BNXT_ULP_CF_IDX_VF_FUNC_SVIF & 0xff,
3247                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
3248                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
3249         },
3250         /* class_tid: 4, wh_plus, table: egr_l2_cntxt_tcam_0 */
3251         {
3252         .description = "l2_ivlan_vid",
3253         .field_bit_size = 12,
3254         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3255         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3256         },
3257         {
3258         .description = "l2_ovlan_vid",
3259         .field_bit_size = 12,
3260         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3261         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3262         },
3263         {
3264         .description = "mac0_l2_dst",
3265         .field_bit_size = 48,
3266         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3267         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3268         },
3269         {
3270         .description = "svif",
3271         .field_bit_size = 8,
3272         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
3273         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
3274                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
3275         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,
3276         .spec_operand = {
3277                 (BNXT_ULP_CF_IDX_VF_FUNC_SVIF >> 8) & 0xff,
3278                 BNXT_ULP_CF_IDX_VF_FUNC_SVIF & 0xff,
3279                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
3280                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
3281         },
3282         {
3283         .description = "sparif",
3284         .field_bit_size = 4,
3285         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3286         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3287         },
3288         {
3289         .description = "tl2_ivlan_vid",
3290         .field_bit_size = 12,
3291         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3292         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3293         },
3294         {
3295         .description = "tl2_ovlan_vid",
3296         .field_bit_size = 12,
3297         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3298         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3299         },
3300         {
3301         .description = "mac1_tl2_dst",
3302         .field_bit_size = 48,
3303         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3304         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3305         },
3306         {
3307         .description = "l2_num_vtags",
3308         .field_bit_size = 2,
3309         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3310         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3311         },
3312         {
3313         .description = "tl2_num_vtags",
3314         .field_bit_size = 2,
3315         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3316         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3317         },
3318         {
3319         .description = "tun_hdr_type",
3320         .field_bit_size = 4,
3321         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3322         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3323         },
3324         {
3325         .description = "key_type",
3326         .field_bit_size = 2,
3327         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3328         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3329         },
3330         {
3331         .description = "valid",
3332         .field_bit_size = 1,
3333         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
3334         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
3335                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
3336         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
3337         .spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
3338                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
3339         },
3340         /* class_tid: 4, wh_plus, table: ing_l2_cntxt_tcam_0 */
3341         {
3342         .description = "l2_ivlan_vid",
3343         .field_bit_size = 12,
3344         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3345         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3346         },
3347         {
3348         .description = "l2_ovlan_vid",
3349         .field_bit_size = 12,
3350         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3351         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3352         },
3353         {
3354         .description = "mac0_l2_dst",
3355         .field_bit_size = 48,
3356         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3357         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3358         },
3359         {
3360         .description = "svif",
3361         .field_bit_size = 8,
3362         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
3363         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
3364                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
3365         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,
3366         .spec_operand = {
3367                 (BNXT_ULP_CF_IDX_VF_FUNC_SVIF >> 8) & 0xff,
3368                 BNXT_ULP_CF_IDX_VF_FUNC_SVIF & 0xff,
3369                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
3370                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
3371         },
3372         {
3373         .description = "sparif",
3374         .field_bit_size = 4,
3375         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3376         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3377         },
3378         {
3379         .description = "tl2_ivlan_vid",
3380         .field_bit_size = 12,
3381         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3382         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3383         },
3384         {
3385         .description = "tl2_ovlan_vid",
3386         .field_bit_size = 12,
3387         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3388         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3389         },
3390         {
3391         .description = "mac1_tl2_dst",
3392         .field_bit_size = 48,
3393         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3394         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3395         },
3396         {
3397         .description = "l2_num_vtags",
3398         .field_bit_size = 2,
3399         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3400         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3401         },
3402         {
3403         .description = "tl2_num_vtags",
3404         .field_bit_size = 2,
3405         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3406         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3407         },
3408         {
3409         .description = "tun_hdr_type",
3410         .field_bit_size = 4,
3411         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3412         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3413         },
3414         {
3415         .description = "key_type",
3416         .field_bit_size = 2,
3417         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3418         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3419         },
3420         {
3421         .description = "valid",
3422         .field_bit_size = 1,
3423         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
3424         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
3425                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
3426         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
3427         .spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
3428                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
3429         },
3430         /* class_tid: 6, wh_plus, table: l2_cntxt_tcam_0 */
3431         {
3432         .description = "l2_ivlan_vid",
3433         .field_bit_size = 12,
3434         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
3435         .mask_operand = {
3436                 (BNXT_ULP_HF6_IDX_OO_VLAN_VID >> 8) & 0xff,
3437                 BNXT_ULP_HF6_IDX_OO_VLAN_VID & 0xff,
3438                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
3439                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
3440         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
3441         .spec_operand = {
3442                 (BNXT_ULP_HF6_IDX_OO_VLAN_VID >> 8) & 0xff,
3443                 BNXT_ULP_HF6_IDX_OO_VLAN_VID & 0xff,
3444                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
3445                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
3446         },
3447         {
3448         .description = "l2_ovlan_vid",
3449         .field_bit_size = 12,
3450         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3451         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3452         },
3453         {
3454         .description = "mac0_l2_addr",
3455         .field_bit_size = 48,
3456         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
3457         .mask_operand = {
3458                 (BNXT_ULP_HF6_IDX_O_ETH_DMAC >> 8) & 0xff,
3459                 BNXT_ULP_HF6_IDX_O_ETH_DMAC & 0xff,
3460                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
3461                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
3462         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
3463         .spec_operand = {
3464                 (BNXT_ULP_HF6_IDX_O_ETH_DMAC >> 8) & 0xff,
3465                 BNXT_ULP_HF6_IDX_O_ETH_DMAC & 0xff,
3466                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
3467                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
3468         },
3469         {
3470         .description = "svif",
3471         .field_bit_size = 8,
3472         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
3473         .mask_operand = {
3474                 (BNXT_ULP_HF6_IDX_SVIF_INDEX >> 8) & 0xff,
3475                 BNXT_ULP_HF6_IDX_SVIF_INDEX & 0xff,
3476                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
3477                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
3478         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
3479         .spec_operand = {
3480                 (BNXT_ULP_HF6_IDX_SVIF_INDEX >> 8) & 0xff,
3481                 BNXT_ULP_HF6_IDX_SVIF_INDEX & 0xff,
3482                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
3483                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
3484         },
3485         {
3486         .description = "sparif",
3487         .field_bit_size = 4,
3488         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3489         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3490         },
3491         {
3492         .description = "tl2_ivlan_vid",
3493         .field_bit_size = 12,
3494         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3495         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3496         },
3497         {
3498         .description = "tl2_ovlan_vid",
3499         .field_bit_size = 12,
3500         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3501         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3502         },
3503         {
3504         .description = "mac1_tl2_addr",
3505         .field_bit_size = 48,
3506         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3507         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3508         },
3509         {
3510         .description = "l2_num_vtags",
3511         .field_bit_size = 2,
3512         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
3513         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
3514                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
3515         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,
3516         .spec_operand = {
3517                 (BNXT_ULP_CF_IDX_O_VTAG_NUM >> 8) & 0xff,
3518                 BNXT_ULP_CF_IDX_O_VTAG_NUM & 0xff,
3519                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
3520                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
3521         },
3522         {
3523         .description = "tl2_num_vtags",
3524         .field_bit_size = 2,
3525         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3526         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3527         },
3528         {
3529         .description = "tun_hdr_type",
3530         .field_bit_size = 4,
3531         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3532         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3533         },
3534         {
3535         .description = "key_type",
3536         .field_bit_size = 2,
3537         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
3538         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
3539                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
3540         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3541         },
3542         {
3543         .description = "valid",
3544         .field_bit_size = 1,
3545         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
3546         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
3547                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
3548         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
3549         .spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
3550                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
3551         },
3552         /* class_tid: 6, wh_plus, table: profile_tcam_cache_0 */
3553         {
3554         .description = "recycle",
3555         .field_bit_size = 1,
3556         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3557         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3558         },
3559         {
3560         .description = "prof_func_id",
3561         .field_bit_size = 7,
3562         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3563         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
3564         .spec_operand = {
3565                 (BNXT_ULP_GLB_REGFILE_INDEX_L2_PROF_FUNC_ID >> 8) & 0xff,
3566                 BNXT_ULP_GLB_REGFILE_INDEX_L2_PROF_FUNC_ID & 0xff,
3567                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
3568                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
3569         },
3570         {
3571         .description = "class_tid",
3572         .field_bit_size = 8,
3573         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3574         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
3575         .spec_operand = {
3576                 (BNXT_ULP_REGFILE_INDEX_CLASS_TID >> 8) & 0xff,
3577                 BNXT_ULP_REGFILE_INDEX_CLASS_TID & 0xff,
3578                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
3579                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
3580         },
3581         /* class_tid: 6, wh_plus, table: profile_tcam_0 */
3582         {
3583         .description = "l4_hdr_is_udp_tcp",
3584         .field_bit_size = 1,
3585         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3586         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3587         },
3588         {
3589         .description = "l4_hdr_type",
3590         .field_bit_size = 4,
3591         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3592         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3593         },
3594         {
3595         .description = "l4_hdr_error",
3596         .field_bit_size = 1,
3597         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3598         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3599         },
3600         {
3601         .description = "l4_hdr_valid",
3602         .field_bit_size = 1,
3603         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3604         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3605         },
3606         {
3607         .description = "l3_ipv6_cmp_dst",
3608         .field_bit_size = 1,
3609         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3610         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3611         },
3612         {
3613         .description = "l3_ipv6_cmp_src",
3614         .field_bit_size = 1,
3615         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3616         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3617         },
3618         {
3619         .description = "l3_hdr_isIP",
3620         .field_bit_size = 1,
3621         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3622         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3623         },
3624         {
3625         .description = "l3_hdr_type",
3626         .field_bit_size = 4,
3627         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
3628         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
3629                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
3630         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3631         },
3632         {
3633         .description = "l3_hdr_error",
3634         .field_bit_size = 1,
3635         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
3636         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
3637                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
3638         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3639         },
3640         {
3641         .description = "l3_hdr_valid",
3642         .field_bit_size = 1,
3643         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
3644         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
3645                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
3646         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
3647         .spec_operand = {
3648                 BNXT_ULP_SYM_L3_HDR_VALID_YES,
3649                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
3650                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
3651         },
3652         {
3653         .description = "l2_two_vtags",
3654         .field_bit_size = 1,
3655         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3656         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3657         },
3658         {
3659         .description = "l2_vtag_present",
3660         .field_bit_size = 1,
3661         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3662         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3663         },
3664         {
3665         .description = "l2_uc_mc_bc",
3666         .field_bit_size = 2,
3667         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
3668         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
3669                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
3670         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3671         },
3672         {
3673         .description = "l2_hdr_type",
3674         .field_bit_size = 2,
3675         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
3676         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
3677                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
3678         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3679         },
3680         {
3681         .description = "l2_hdr_error",
3682         .field_bit_size = 1,
3683         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
3684         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
3685                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
3686         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3687         },
3688         {
3689         .description = "l2_hdr_valid",
3690         .field_bit_size = 1,
3691         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
3692         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
3693                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
3694         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
3695         .spec_operand = {
3696                 BNXT_ULP_SYM_L2_HDR_VALID_YES,
3697                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
3698                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
3699         },
3700         {
3701         .description = "tun_hdr_flags",
3702         .field_bit_size = 3,
3703         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3704         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3705         },
3706         {
3707         .description = "tun_hdr_type",
3708         .field_bit_size = 4,
3709         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3710         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3711         },
3712         {
3713         .description = "tun_hdr_error",
3714         .field_bit_size = 1,
3715         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3716         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3717         },
3718         {
3719         .description = "tun_hdr_valid",
3720         .field_bit_size = 1,
3721         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
3722         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
3723                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
3724         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3725         },
3726         {
3727         .description = "tl4_hdr_is_udp_tcp",
3728         .field_bit_size = 1,
3729         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3730         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3731         },
3732         {
3733         .description = "tl4_hdr_type",
3734         .field_bit_size = 4,
3735         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3736         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3737         },
3738         {
3739         .description = "tl4_hdr_error",
3740         .field_bit_size = 1,
3741         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3742         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3743         },
3744         {
3745         .description = "tl4_hdr_valid",
3746         .field_bit_size = 1,
3747         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
3748         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
3749                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
3750         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3751         },
3752         {
3753         .description = "tl3_ipv6_cmp_dst",
3754         .field_bit_size = 1,
3755         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3756         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3757         },
3758         {
3759         .description = "tl3_ipv6_cmp_src",
3760         .field_bit_size = 1,
3761         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3762         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3763         },
3764         {
3765         .description = "tl3_hdr_isIP",
3766         .field_bit_size = 1,
3767         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3768         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3769         },
3770         {
3771         .description = "tl3_hdr_type",
3772         .field_bit_size = 4,
3773         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3774         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3775         },
3776         {
3777         .description = "tl3_hdr_error",
3778         .field_bit_size = 1,
3779         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3780         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3781         },
3782         {
3783         .description = "tl3_hdr_valid",
3784         .field_bit_size = 1,
3785         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
3786         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
3787                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
3788         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3789         },
3790         {
3791         .description = "tl2_two_vtags",
3792         .field_bit_size = 1,
3793         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3794         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3795         },
3796         {
3797         .description = "tl2_vtag_present",
3798         .field_bit_size = 1,
3799         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3800         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3801         },
3802         {
3803         .description = "tl2_uc_mc_bc",
3804         .field_bit_size = 2,
3805         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3806         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3807         },
3808         {
3809         .description = "tl2_hdr_type",
3810         .field_bit_size = 2,
3811         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3812         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3813         },
3814         {
3815         .description = "tl2_hdr_valid",
3816         .field_bit_size = 1,
3817         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
3818         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
3819                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
3820         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3821         },
3822         {
3823         .description = "hrec_next",
3824         .field_bit_size = 1,
3825         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3826         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3827         },
3828         {
3829         .description = "reserved",
3830         .field_bit_size = 9,
3831         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3832         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3833         },
3834         {
3835         .description = "prof_func_id",
3836         .field_bit_size = 7,
3837         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
3838         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
3839                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
3840         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
3841         .spec_operand = {
3842                 (BNXT_ULP_GLB_REGFILE_INDEX_L2_PROF_FUNC_ID >> 8) & 0xff,
3843                 BNXT_ULP_GLB_REGFILE_INDEX_L2_PROF_FUNC_ID & 0xff,
3844                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
3845                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
3846         },
3847         {
3848         .description = "agg_error",
3849         .field_bit_size = 1,
3850         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3851         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3852         },
3853         {
3854         .description = "recycle_cnt",
3855         .field_bit_size = 2,
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 = "pkt_type_0",
3863         .field_bit_size = 2,
3864         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3865         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3866         },
3867         {
3868         .description = "pkt_type_1",
3869         .field_bit_size = 2,
3870         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
3871         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
3872                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
3873         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3874         },
3875         {
3876         .description = "valid",
3877         .field_bit_size = 1,
3878         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
3879         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
3880                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
3881         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
3882         .spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
3883                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
3884         },
3885         /* class_tid: 6, wh_plus, table: ext_em_0 */
3886         {
3887         .description = "spare",
3888         .field_bit_size = 251,
3889         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3890         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3891         },
3892         {
3893         .description = "local_cos",
3894         .field_bit_size = 3,
3895         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3896         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3897         },
3898         {
3899         .description = "l4_dst_port",
3900         .field_bit_size = 16,
3901         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3902         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3903         },
3904         {
3905         .description = "l4_src_port",
3906         .field_bit_size = 16,
3907         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3908         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3909         },
3910         {
3911         .description = "ip_proto",
3912         .field_bit_size = 8,
3913         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3914         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3915         },
3916         {
3917         .description = "ipv4_dst_addr",
3918         .field_bit_size = 32,
3919         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3920         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3921         },
3922         {
3923         .description = "ipv4_src_addr",
3924         .field_bit_size = 32,
3925         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3926         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3927         },
3928         {
3929         .description = "l2_src_mac",
3930         .field_bit_size = 48,
3931         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3932         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
3933         .spec_operand = {
3934                 (BNXT_ULP_HF6_IDX_O_ETH_SMAC >> 8) & 0xff,
3935                 BNXT_ULP_HF6_IDX_O_ETH_SMAC & 0xff,
3936                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
3937                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
3938         },
3939         {
3940         .description = "tun_id",
3941         .field_bit_size = 24,
3942         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3943         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3944         },
3945         {
3946         .description = "l2_cntxt_id",
3947         .field_bit_size = 10,
3948         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3949         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
3950         .spec_operand = {
3951                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
3952                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
3953                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
3954                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
3955         },
3956         {
3957         .description = "em_profile_id",
3958         .field_bit_size = 8,
3959         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3960         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
3961         .spec_operand = {
3962                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
3963                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
3964                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
3965                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
3966         },
3967         /* class_tid: 6, wh_plus, table: int_em_0 */
3968         {
3969         .description = "spare",
3970         .field_bit_size = 3,
3971         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3972         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3973         },
3974         {
3975         .description = "local_cos",
3976         .field_bit_size = 3,
3977         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3978         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3979         },
3980         {
3981         .description = "l4_dst_port",
3982         .field_bit_size = 16,
3983         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3984         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3985         },
3986         {
3987         .description = "l4_src_port",
3988         .field_bit_size = 16,
3989         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3990         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3991         },
3992         {
3993         .description = "ip_proto",
3994         .field_bit_size = 8,
3995         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3996         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3997         },
3998         {
3999         .description = "ipv4_dst_addr",
4000         .field_bit_size = 32,
4001         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4002         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4003         },
4004         {
4005         .description = "ipv4_src_addr",
4006         .field_bit_size = 32,
4007         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4008         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4009         },
4010         {
4011         .description = "l2_src_mac",
4012         .field_bit_size = 48,
4013         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4014         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
4015         .spec_operand = {
4016                 (BNXT_ULP_HF6_IDX_O_ETH_SMAC >> 8) & 0xff,
4017                 BNXT_ULP_HF6_IDX_O_ETH_SMAC & 0xff,
4018                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
4019                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
4020         },
4021         {
4022         .description = "tun_id",
4023         .field_bit_size = 24,
4024         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4025         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4026         },
4027         {
4028         .description = "l2_cntxt_id",
4029         .field_bit_size = 10,
4030         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4031         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
4032         .spec_operand = {
4033                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
4034                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
4035                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
4036                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
4037         },
4038         {
4039         .description = "em_profile_id",
4040         .field_bit_size = 8,
4041         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4042         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
4043         .spec_operand = {
4044                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
4045                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
4046                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
4047                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
4048         },
4049         /* class_tid: 7, wh_plus, table: l2_cntxt_tcam_0 */
4050         {
4051         .description = "l2_ivlan_vid",
4052         .field_bit_size = 12,
4053         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
4054         .mask_operand = {
4055                 (BNXT_ULP_HF7_IDX_OO_VLAN_VID >> 8) & 0xff,
4056                 BNXT_ULP_HF7_IDX_OO_VLAN_VID & 0xff,
4057                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
4058                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
4059         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
4060         .spec_operand = {
4061                 (BNXT_ULP_HF7_IDX_OO_VLAN_VID >> 8) & 0xff,
4062                 BNXT_ULP_HF7_IDX_OO_VLAN_VID & 0xff,
4063                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
4064                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
4065         },
4066         {
4067         .description = "l2_ovlan_vid",
4068         .field_bit_size = 12,
4069         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4070         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4071         },
4072         {
4073         .description = "mac0_l2_addr",
4074         .field_bit_size = 48,
4075         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
4076         .mask_operand = {
4077                 (BNXT_ULP_HF7_IDX_O_ETH_DMAC >> 8) & 0xff,
4078                 BNXT_ULP_HF7_IDX_O_ETH_DMAC & 0xff,
4079                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
4080                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
4081         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
4082         .spec_operand = {
4083                 (BNXT_ULP_HF7_IDX_O_ETH_DMAC >> 8) & 0xff,
4084                 BNXT_ULP_HF7_IDX_O_ETH_DMAC & 0xff,
4085                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
4086                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
4087         },
4088         {
4089         .description = "svif",
4090         .field_bit_size = 8,
4091         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
4092         .mask_operand = {
4093                 (BNXT_ULP_HF7_IDX_SVIF_INDEX >> 8) & 0xff,
4094                 BNXT_ULP_HF7_IDX_SVIF_INDEX & 0xff,
4095                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
4096                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
4097         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
4098         .spec_operand = {
4099                 (BNXT_ULP_HF7_IDX_SVIF_INDEX >> 8) & 0xff,
4100                 BNXT_ULP_HF7_IDX_SVIF_INDEX & 0xff,
4101                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
4102                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
4103         },
4104         {
4105         .description = "sparif",
4106         .field_bit_size = 4,
4107         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4108         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4109         },
4110         {
4111         .description = "tl2_ivlan_vid",
4112         .field_bit_size = 12,
4113         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4114         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4115         },
4116         {
4117         .description = "tl2_ovlan_vid",
4118         .field_bit_size = 12,
4119         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4120         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4121         },
4122         {
4123         .description = "mac1_tl2_addr",
4124         .field_bit_size = 48,
4125         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4126         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4127         },
4128         {
4129         .description = "l2_num_vtags",
4130         .field_bit_size = 2,
4131         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
4132         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
4133                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
4134         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,
4135         .spec_operand = {
4136                 (BNXT_ULP_CF_IDX_O_VTAG_NUM >> 8) & 0xff,
4137                 BNXT_ULP_CF_IDX_O_VTAG_NUM & 0xff,
4138                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
4139                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
4140         },
4141         {
4142         .description = "tl2_num_vtags",
4143         .field_bit_size = 2,
4144         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4145         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4146         },
4147         {
4148         .description = "tun_hdr_type",
4149         .field_bit_size = 4,
4150         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4151         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4152         },
4153         {
4154         .description = "key_type",
4155         .field_bit_size = 2,
4156         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
4157         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
4158                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
4159         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4160         },
4161         {
4162         .description = "valid",
4163         .field_bit_size = 1,
4164         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
4165         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
4166                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
4167         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
4168         .spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
4169                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
4170         },
4171         /* class_tid: 7, wh_plus, table: profile_tcam_cache_0 */
4172         {
4173         .description = "recycle",
4174         .field_bit_size = 1,
4175         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4176         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4177         },
4178         {
4179         .description = "prof_func_id",
4180         .field_bit_size = 7,
4181         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4182         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
4183         .spec_operand = {
4184                 (BNXT_ULP_GLB_REGFILE_INDEX_L2_PROF_FUNC_ID >> 8) & 0xff,
4185                 BNXT_ULP_GLB_REGFILE_INDEX_L2_PROF_FUNC_ID & 0xff,
4186                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
4187                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
4188         },
4189         {
4190         .description = "class_tid",
4191         .field_bit_size = 8,
4192         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4193         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
4194         .spec_operand = {
4195                 (BNXT_ULP_REGFILE_INDEX_CLASS_TID >> 8) & 0xff,
4196                 BNXT_ULP_REGFILE_INDEX_CLASS_TID & 0xff,
4197                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
4198                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
4199         },
4200         /* class_tid: 7, wh_plus, table: profile_tcam_0 */
4201         {
4202         .description = "l4_hdr_is_udp_tcp",
4203         .field_bit_size = 1,
4204         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4205         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4206         },
4207         {
4208         .description = "l4_hdr_type",
4209         .field_bit_size = 4,
4210         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4211         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4212         },
4213         {
4214         .description = "l4_hdr_error",
4215         .field_bit_size = 1,
4216         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4217         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4218         },
4219         {
4220         .description = "l4_hdr_valid",
4221         .field_bit_size = 1,
4222         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4223         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4224         },
4225         {
4226         .description = "l3_ipv6_cmp_dst",
4227         .field_bit_size = 1,
4228         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4229         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4230         },
4231         {
4232         .description = "l3_ipv6_cmp_src",
4233         .field_bit_size = 1,
4234         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4235         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4236         },
4237         {
4238         .description = "l3_hdr_isIP",
4239         .field_bit_size = 1,
4240         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4241         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4242         },
4243         {
4244         .description = "l3_hdr_type",
4245         .field_bit_size = 4,
4246         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
4247         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
4248                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
4249         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
4250         .spec_operand = {
4251                 BNXT_ULP_SYM_L3_HDR_TYPE_IPV6,
4252                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
4253                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
4254         },
4255         {
4256         .description = "l3_hdr_error",
4257         .field_bit_size = 1,
4258         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
4259         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
4260                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
4261         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4262         },
4263         {
4264         .description = "l3_hdr_valid",
4265         .field_bit_size = 1,
4266         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
4267         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
4268                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
4269         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
4270         .spec_operand = {
4271                 BNXT_ULP_SYM_L3_HDR_VALID_YES,
4272                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
4273                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
4274         },
4275         {
4276         .description = "l2_two_vtags",
4277         .field_bit_size = 1,
4278         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4279         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4280         },
4281         {
4282         .description = "l2_vtag_present",
4283         .field_bit_size = 1,
4284         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4285         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4286         },
4287         {
4288         .description = "l2_uc_mc_bc",
4289         .field_bit_size = 2,
4290         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
4291         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
4292                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
4293         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4294         },
4295         {
4296         .description = "l2_hdr_type",
4297         .field_bit_size = 2,
4298         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
4299         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
4300                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
4301         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4302         },
4303         {
4304         .description = "l2_hdr_error",
4305         .field_bit_size = 1,
4306         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
4307         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
4308                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
4309         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4310         },
4311         {
4312         .description = "l2_hdr_valid",
4313         .field_bit_size = 1,
4314         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
4315         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
4316                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
4317         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
4318         .spec_operand = {
4319                 BNXT_ULP_SYM_L2_HDR_VALID_YES,
4320                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
4321                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
4322         },
4323         {
4324         .description = "tun_hdr_flags",
4325         .field_bit_size = 3,
4326         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4327         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4328         },
4329         {
4330         .description = "tun_hdr_type",
4331         .field_bit_size = 4,
4332         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4333         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4334         },
4335         {
4336         .description = "tun_hdr_error",
4337         .field_bit_size = 1,
4338         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4339         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4340         },
4341         {
4342         .description = "tun_hdr_valid",
4343         .field_bit_size = 1,
4344         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
4345         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
4346                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
4347         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4348         },
4349         {
4350         .description = "tl4_hdr_is_udp_tcp",
4351         .field_bit_size = 1,
4352         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4353         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4354         },
4355         {
4356         .description = "tl4_hdr_type",
4357         .field_bit_size = 4,
4358         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4359         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4360         },
4361         {
4362         .description = "tl4_hdr_error",
4363         .field_bit_size = 1,
4364         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4365         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4366         },
4367         {
4368         .description = "tl4_hdr_valid",
4369         .field_bit_size = 1,
4370         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
4371         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
4372                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
4373         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4374         },
4375         {
4376         .description = "tl3_ipv6_cmp_dst",
4377         .field_bit_size = 1,
4378         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4379         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4380         },
4381         {
4382         .description = "tl3_ipv6_cmp_src",
4383         .field_bit_size = 1,
4384         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4385         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4386         },
4387         {
4388         .description = "tl3_hdr_isIP",
4389         .field_bit_size = 1,
4390         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4391         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4392         },
4393         {
4394         .description = "tl3_hdr_type",
4395         .field_bit_size = 4,
4396         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4397         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4398         },
4399         {
4400         .description = "tl3_hdr_error",
4401         .field_bit_size = 1,
4402         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4403         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4404         },
4405         {
4406         .description = "tl3_hdr_valid",
4407         .field_bit_size = 1,
4408         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
4409         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
4410                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
4411         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4412         },
4413         {
4414         .description = "tl2_two_vtags",
4415         .field_bit_size = 1,
4416         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4417         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4418         },
4419         {
4420         .description = "tl2_vtag_present",
4421         .field_bit_size = 1,
4422         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4423         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4424         },
4425         {
4426         .description = "tl2_uc_mc_bc",
4427         .field_bit_size = 2,
4428         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4429         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4430         },
4431         {
4432         .description = "tl2_hdr_type",
4433         .field_bit_size = 2,
4434         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4435         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4436         },
4437         {
4438         .description = "tl2_hdr_valid",
4439         .field_bit_size = 1,
4440         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
4441         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
4442                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
4443         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4444         },
4445         {
4446         .description = "hrec_next",
4447         .field_bit_size = 1,
4448         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4449         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4450         },
4451         {
4452         .description = "reserved",
4453         .field_bit_size = 9,
4454         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4455         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4456         },
4457         {
4458         .description = "prof_func_id",
4459         .field_bit_size = 7,
4460         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
4461         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
4462                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
4463         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
4464         .spec_operand = {
4465                 (BNXT_ULP_GLB_REGFILE_INDEX_L2_PROF_FUNC_ID >> 8) & 0xff,
4466                 BNXT_ULP_GLB_REGFILE_INDEX_L2_PROF_FUNC_ID & 0xff,
4467                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
4468                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
4469         },
4470         {
4471         .description = "agg_error",
4472         .field_bit_size = 1,
4473         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4474         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4475         },
4476         {
4477         .description = "recycle_cnt",
4478         .field_bit_size = 2,
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 = "pkt_type_0",
4486         .field_bit_size = 2,
4487         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4488         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4489         },
4490         {
4491         .description = "pkt_type_1",
4492         .field_bit_size = 2,
4493         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
4494         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
4495                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
4496         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4497         },
4498         {
4499         .description = "valid",
4500         .field_bit_size = 1,
4501         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
4502         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
4503                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
4504         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
4505         .spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
4506                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
4507         },
4508         /* class_tid: 7, wh_plus, table: ext_em_0 */
4509         {
4510         .description = "spare",
4511         .field_bit_size = 251,
4512         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4513         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4514         },
4515         {
4516         .description = "local_cos",
4517         .field_bit_size = 3,
4518         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4519         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4520         },
4521         {
4522         .description = "l4_dst_port",
4523         .field_bit_size = 16,
4524         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4525         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4526         },
4527         {
4528         .description = "l4_src_port",
4529         .field_bit_size = 16,
4530         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4531         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4532         },
4533         {
4534         .description = "ip_proto",
4535         .field_bit_size = 8,
4536         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4537         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4538         },
4539         {
4540         .description = "ipv4_dst_addr",
4541         .field_bit_size = 32,
4542         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4543         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4544         },
4545         {
4546         .description = "ipv4_src_addr",
4547         .field_bit_size = 32,
4548         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4549         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4550         },
4551         {
4552         .description = "l2_src_mac",
4553         .field_bit_size = 48,
4554         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4555         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
4556         .spec_operand = {
4557                 (BNXT_ULP_HF7_IDX_O_ETH_SMAC >> 8) & 0xff,
4558                 BNXT_ULP_HF7_IDX_O_ETH_SMAC & 0xff,
4559                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
4560                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
4561         },
4562         {
4563         .description = "tun_id",
4564         .field_bit_size = 24,
4565         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4566         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4567         },
4568         {
4569         .description = "l2_cntxt_id",
4570         .field_bit_size = 10,
4571         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4572         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
4573         .spec_operand = {
4574                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
4575                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
4576                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
4577                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
4578         },
4579         {
4580         .description = "em_profile_id",
4581         .field_bit_size = 8,
4582         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4583         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
4584         .spec_operand = {
4585                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
4586                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
4587                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
4588                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
4589         },
4590         /* class_tid: 7, wh_plus, table: int_em_0 */
4591         {
4592         .description = "spare",
4593         .field_bit_size = 3,
4594         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4595         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4596         },
4597         {
4598         .description = "local_cos",
4599         .field_bit_size = 3,
4600         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4601         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4602         },
4603         {
4604         .description = "l4_dst_port",
4605         .field_bit_size = 16,
4606         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4607         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4608         },
4609         {
4610         .description = "l4_src_port",
4611         .field_bit_size = 16,
4612         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4613         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4614         },
4615         {
4616         .description = "ip_proto",
4617         .field_bit_size = 8,
4618         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4619         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4620         },
4621         {
4622         .description = "ipv4_dst_addr",
4623         .field_bit_size = 32,
4624         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4625         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4626         },
4627         {
4628         .description = "ipv4_src_addr",
4629         .field_bit_size = 32,
4630         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4631         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4632         },
4633         {
4634         .description = "l2_src_mac",
4635         .field_bit_size = 48,
4636         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4637         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
4638         .spec_operand = {
4639                 (BNXT_ULP_HF7_IDX_O_ETH_SMAC >> 8) & 0xff,
4640                 BNXT_ULP_HF7_IDX_O_ETH_SMAC & 0xff,
4641                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
4642                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
4643         },
4644         {
4645         .description = "tun_id",
4646         .field_bit_size = 24,
4647         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4648         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4649         },
4650         {
4651         .description = "l2_cntxt_id",
4652         .field_bit_size = 10,
4653         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4654         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
4655         .spec_operand = {
4656                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
4657                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
4658                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
4659                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
4660         },
4661         {
4662         .description = "em_profile_id",
4663         .field_bit_size = 8,
4664         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4665         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
4666         .spec_operand = {
4667                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
4668                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
4669                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
4670                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
4671         },
4672         /* class_tid: 8, wh_plus, table: l2_cntxt_cache_0 */
4673         {
4674         .description = "svif",
4675         .field_bit_size = 8,
4676         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4677         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
4678         .spec_operand = {
4679                 (BNXT_ULP_HF8_IDX_SVIF_INDEX >> 8) & 0xff,
4680                 BNXT_ULP_HF8_IDX_SVIF_INDEX & 0xff,
4681                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
4682                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
4683         },
4684         /* class_tid: 8, wh_plus, table: l2_cntxt_tcam_0 */
4685         {
4686         .description = "l2_ivlan_vid",
4687         .field_bit_size = 12,
4688         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4689         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4690         },
4691         {
4692         .description = "l2_ovlan_vid",
4693         .field_bit_size = 12,
4694         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4695         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4696         },
4697         {
4698         .description = "mac0_l2_dst",
4699         .field_bit_size = 48,
4700         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4701         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4702         },
4703         {
4704         .description = "svif",
4705         .field_bit_size = 8,
4706         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
4707         .mask_operand = {
4708                 (BNXT_ULP_HF8_IDX_SVIF_INDEX >> 8) & 0xff,
4709                 BNXT_ULP_HF8_IDX_SVIF_INDEX & 0xff,
4710                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
4711                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
4712         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
4713         .spec_operand = {
4714                 (BNXT_ULP_HF8_IDX_SVIF_INDEX >> 8) & 0xff,
4715                 BNXT_ULP_HF8_IDX_SVIF_INDEX & 0xff,
4716                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
4717                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
4718         },
4719         {
4720         .description = "sparif",
4721         .field_bit_size = 4,
4722         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4723         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4724         },
4725         {
4726         .description = "tl2_ivlan_vid",
4727         .field_bit_size = 12,
4728         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4729         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4730         },
4731         {
4732         .description = "tl2_ovlan_vid",
4733         .field_bit_size = 12,
4734         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4735         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4736         },
4737         {
4738         .description = "mac1_tl2_dst",
4739         .field_bit_size = 48,
4740         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4741         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4742         },
4743         {
4744         .description = "l2_num_vtags",
4745         .field_bit_size = 2,
4746         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4747         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4748         },
4749         {
4750         .description = "tl2_num_vtags",
4751         .field_bit_size = 2,
4752         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4753         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4754         },
4755         {
4756         .description = "tun_hdr_type",
4757         .field_bit_size = 4,
4758         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4759         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4760         },
4761         {
4762         .description = "key_type",
4763         .field_bit_size = 2,
4764         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4765         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4766         },
4767         {
4768         .description = "valid",
4769         .field_bit_size = 1,
4770         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
4771         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
4772                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
4773         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
4774         .spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
4775                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
4776         },
4777         /* class_tid: 8, wh_plus, table: profile_tcam_cache_0 */
4778         {
4779         .description = "recycle",
4780         .field_bit_size = 1,
4781         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4782         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4783         },
4784         {
4785         .description = "prof_func_id",
4786         .field_bit_size = 7,
4787         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4788         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
4789         .spec_operand = {
4790                 (BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID >> 8) & 0xff,
4791                 BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID & 0xff,
4792                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
4793                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
4794         },
4795         {
4796         .description = "class_tid",
4797         .field_bit_size = 8,
4798         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4799         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
4800         .spec_operand = {
4801                 (BNXT_ULP_REGFILE_INDEX_CLASS_TID >> 8) & 0xff,
4802                 BNXT_ULP_REGFILE_INDEX_CLASS_TID & 0xff,
4803                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
4804                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
4805         },
4806         /* class_tid: 8, wh_plus, table: profile_tcam_0 */
4807         {
4808         .description = "l4_hdr_is_udp_tcp",
4809         .field_bit_size = 1,
4810         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4811         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4812         },
4813         {
4814         .description = "l4_hdr_type",
4815         .field_bit_size = 4,
4816         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
4817         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
4818                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
4819         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
4820         .spec_operand = {
4821                 BNXT_ULP_SYM_L4_HDR_TYPE_UDP,
4822                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
4823                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
4824         },
4825         {
4826         .description = "l4_hdr_error",
4827         .field_bit_size = 1,
4828         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
4829         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
4830                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
4831         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4832         },
4833         {
4834         .description = "l4_hdr_valid",
4835         .field_bit_size = 1,
4836         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
4837         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
4838                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
4839         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
4840         .spec_operand = {
4841                 BNXT_ULP_SYM_L4_HDR_VALID_YES,
4842                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
4843                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
4844         },
4845         {
4846         .description = "l3_ipv6_cmp_dst",
4847         .field_bit_size = 1,
4848         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4849         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4850         },
4851         {
4852         .description = "l3_ipv6_cmp_src",
4853         .field_bit_size = 1,
4854         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4855         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4856         },
4857         {
4858         .description = "l3_hdr_isIP",
4859         .field_bit_size = 1,
4860         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4861         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4862         },
4863         {
4864         .description = "l3_hdr_type",
4865         .field_bit_size = 4,
4866         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
4867         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
4868                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
4869         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4870         },
4871         {
4872         .description = "l3_hdr_error",
4873         .field_bit_size = 1,
4874         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
4875         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
4876                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
4877         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4878         },
4879         {
4880         .description = "l3_hdr_valid",
4881         .field_bit_size = 1,
4882         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
4883         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
4884                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
4885         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
4886         .spec_operand = {
4887                 BNXT_ULP_SYM_L3_HDR_VALID_YES,
4888                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
4889                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
4890         },
4891         {
4892         .description = "l2_two_vtags",
4893         .field_bit_size = 1,
4894         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4895         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4896         },
4897         {
4898         .description = "l2_vtag_present",
4899         .field_bit_size = 1,
4900         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4901         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4902         },
4903         {
4904         .description = "l2_uc_mc_bc",
4905         .field_bit_size = 2,
4906         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
4907         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
4908                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
4909         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4910         },
4911         {
4912         .description = "l2_hdr_type",
4913         .field_bit_size = 2,
4914         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
4915         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
4916                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
4917         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4918         },
4919         {
4920         .description = "l2_hdr_error",
4921         .field_bit_size = 1,
4922         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
4923         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
4924                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
4925         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4926         },
4927         {
4928         .description = "l2_hdr_valid",
4929         .field_bit_size = 1,
4930         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
4931         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
4932                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
4933         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
4934         .spec_operand = {
4935                 BNXT_ULP_SYM_L2_HDR_VALID_YES,
4936                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
4937                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
4938         },
4939         {
4940         .description = "tun_hdr_flags",
4941         .field_bit_size = 3,
4942         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4943         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4944         },
4945         {
4946         .description = "tun_hdr_type",
4947         .field_bit_size = 4,
4948         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4949         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4950         },
4951         {
4952         .description = "tun_hdr_error",
4953         .field_bit_size = 1,
4954         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4955         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4956         },
4957         {
4958         .description = "tun_hdr_valid",
4959         .field_bit_size = 1,
4960         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
4961         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
4962                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
4963         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4964         },
4965         {
4966         .description = "tl4_hdr_is_udp_tcp",
4967         .field_bit_size = 1,
4968         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4969         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4970         },
4971         {
4972         .description = "tl4_hdr_type",
4973         .field_bit_size = 4,
4974         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4975         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4976         },
4977         {
4978         .description = "tl4_hdr_error",
4979         .field_bit_size = 1,
4980         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4981         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4982         },
4983         {
4984         .description = "tl4_hdr_valid",
4985         .field_bit_size = 1,
4986         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
4987         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
4988                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
4989         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4990         },
4991         {
4992         .description = "tl3_ipv6_cmp_dst",
4993         .field_bit_size = 1,
4994         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4995         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4996         },
4997         {
4998         .description = "tl3_ipv6_cmp_src",
4999         .field_bit_size = 1,
5000         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5001         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5002         },
5003         {
5004         .description = "tl3_hdr_isIP",
5005         .field_bit_size = 1,
5006         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5007         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5008         },
5009         {
5010         .description = "tl3_hdr_type",
5011         .field_bit_size = 4,
5012         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5013         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5014         },
5015         {
5016         .description = "tl3_hdr_error",
5017         .field_bit_size = 1,
5018         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5019         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5020         },
5021         {
5022         .description = "tl3_hdr_valid",
5023         .field_bit_size = 1,
5024         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
5025         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
5026                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
5027         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5028         },
5029         {
5030         .description = "tl2_two_vtags",
5031         .field_bit_size = 1,
5032         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5033         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5034         },
5035         {
5036         .description = "tl2_vtag_present",
5037         .field_bit_size = 1,
5038         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5039         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5040         },
5041         {
5042         .description = "tl2_uc_mc_bc",
5043         .field_bit_size = 2,
5044         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5045         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5046         },
5047         {
5048         .description = "tl2_hdr_type",
5049         .field_bit_size = 2,
5050         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5051         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5052         },
5053         {
5054         .description = "tl2_hdr_valid",
5055         .field_bit_size = 1,
5056         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
5057         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
5058                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
5059         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5060         },
5061         {
5062         .description = "hrec_next",
5063         .field_bit_size = 1,
5064         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5065         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5066         },
5067         {
5068         .description = "reserved",
5069         .field_bit_size = 9,
5070         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5071         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5072         },
5073         {
5074         .description = "prof_func_id",
5075         .field_bit_size = 7,
5076         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
5077         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
5078                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
5079         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
5080         .spec_operand = {
5081                 (BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID >> 8) & 0xff,
5082                 BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID & 0xff,
5083                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
5084                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
5085         },
5086         {
5087         .description = "agg_error",
5088         .field_bit_size = 1,
5089         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5090         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5091         },
5092         {
5093         .description = "recycle_cnt",
5094         .field_bit_size = 2,
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 = "pkt_type_0",
5102         .field_bit_size = 2,
5103         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5104         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5105         },
5106         {
5107         .description = "pkt_type_1",
5108         .field_bit_size = 2,
5109         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
5110         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
5111                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
5112         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5113         },
5114         {
5115         .description = "valid",
5116         .field_bit_size = 1,
5117         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
5118         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
5119                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
5120         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
5121         .spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
5122                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
5123         },
5124         /* class_tid: 8, wh_plus, table: ext_em_0 */
5125         {
5126         .description = "spare",
5127         .field_bit_size = 251,
5128         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5129         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5130         },
5131         {
5132         .description = "local_cos",
5133         .field_bit_size = 3,
5134         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5135         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5136         },
5137         {
5138         .description = "l4_dst_port",
5139         .field_bit_size = 16,
5140         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5141         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
5142         .spec_operand = {
5143                 (BNXT_ULP_HF8_IDX_O_UDP_DST_PORT >> 8) & 0xff,
5144                 BNXT_ULP_HF8_IDX_O_UDP_DST_PORT & 0xff,
5145                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
5146                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
5147         },
5148         {
5149         .description = "l4_src_port",
5150         .field_bit_size = 16,
5151         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5152         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
5153         .spec_operand = {
5154                 (BNXT_ULP_HF8_IDX_O_UDP_SRC_PORT >> 8) & 0xff,
5155                 BNXT_ULP_HF8_IDX_O_UDP_SRC_PORT & 0xff,
5156                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
5157                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
5158         },
5159         {
5160         .description = "ip_proto",
5161         .field_bit_size = 8,
5162         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5163         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
5164         .spec_operand = {
5165                 BNXT_ULP_SYM_IP_PROTO_UDP,
5166                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
5167                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
5168         },
5169         {
5170         .description = "ipv4_dst_addr",
5171         .field_bit_size = 32,
5172         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5173         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
5174         .spec_operand = {
5175                 (BNXT_ULP_HF8_IDX_O_IPV4_DST_ADDR >> 8) & 0xff,
5176                 BNXT_ULP_HF8_IDX_O_IPV4_DST_ADDR & 0xff,
5177                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
5178                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
5179         },
5180         {
5181         .description = "ipv4_src_addr",
5182         .field_bit_size = 32,
5183         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5184         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
5185         .spec_operand = {
5186                 (BNXT_ULP_HF8_IDX_O_IPV4_SRC_ADDR >> 8) & 0xff,
5187                 BNXT_ULP_HF8_IDX_O_IPV4_SRC_ADDR & 0xff,
5188                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
5189                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
5190         },
5191         {
5192         .description = "l2_src_mac",
5193         .field_bit_size = 48,
5194         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5195         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5196         },
5197         {
5198         .description = "tun_id",
5199         .field_bit_size = 24,
5200         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5201         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5202         },
5203         {
5204         .description = "l2_cntxt_id",
5205         .field_bit_size = 10,
5206         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5207         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
5208         .spec_operand = {
5209                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
5210                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
5211                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
5212                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
5213         },
5214         {
5215         .description = "em_profile_id",
5216         .field_bit_size = 8,
5217         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5218         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
5219         .spec_operand = {
5220                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
5221                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
5222                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
5223                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
5224         },
5225         /* class_tid: 8, wh_plus, table: int_em_0 */
5226         {
5227         .description = "spare",
5228         .field_bit_size = 3,
5229         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5230         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5231         },
5232         {
5233         .description = "local_cos",
5234         .field_bit_size = 3,
5235         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5236         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5237         },
5238         {
5239         .description = "l4_dst_port",
5240         .field_bit_size = 16,
5241         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5242         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
5243         .spec_operand = {
5244                 (BNXT_ULP_HF8_IDX_O_UDP_DST_PORT >> 8) & 0xff,
5245                 BNXT_ULP_HF8_IDX_O_UDP_DST_PORT & 0xff,
5246                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
5247                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
5248         },
5249         {
5250         .description = "l4_src_port",
5251         .field_bit_size = 16,
5252         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5253         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
5254         .spec_operand = {
5255                 (BNXT_ULP_HF8_IDX_O_UDP_SRC_PORT >> 8) & 0xff,
5256                 BNXT_ULP_HF8_IDX_O_UDP_SRC_PORT & 0xff,
5257                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
5258                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
5259         },
5260         {
5261         .description = "ip_proto",
5262         .field_bit_size = 8,
5263         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5264         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
5265         .spec_operand = {
5266                 BNXT_ULP_SYM_IP_PROTO_UDP,
5267                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
5268                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
5269         },
5270         {
5271         .description = "ipv4_dst_addr",
5272         .field_bit_size = 32,
5273         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5274         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
5275         .spec_operand = {
5276                 (BNXT_ULP_HF8_IDX_O_IPV4_DST_ADDR >> 8) & 0xff,
5277                 BNXT_ULP_HF8_IDX_O_IPV4_DST_ADDR & 0xff,
5278                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
5279                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
5280         },
5281         {
5282         .description = "ipv4_src_addr",
5283         .field_bit_size = 32,
5284         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5285         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
5286         .spec_operand = {
5287                 (BNXT_ULP_HF8_IDX_O_IPV4_SRC_ADDR >> 8) & 0xff,
5288                 BNXT_ULP_HF8_IDX_O_IPV4_SRC_ADDR & 0xff,
5289                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
5290                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
5291         },
5292         {
5293         .description = "l2_src_mac",
5294         .field_bit_size = 48,
5295         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5296         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5297         },
5298         {
5299         .description = "tun_id",
5300         .field_bit_size = 24,
5301         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5302         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5303         },
5304         {
5305         .description = "l2_cntxt_id",
5306         .field_bit_size = 10,
5307         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5308         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
5309         .spec_operand = {
5310                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
5311                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
5312                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
5313                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
5314         },
5315         {
5316         .description = "em_profile_id",
5317         .field_bit_size = 8,
5318         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5319         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
5320         .spec_operand = {
5321                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
5322                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
5323                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
5324                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
5325         },
5326         /* class_tid: 9, wh_plus, table: l2_cntxt_cache_0 */
5327         {
5328         .description = "svif",
5329         .field_bit_size = 8,
5330         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5331         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
5332         .spec_operand = {
5333                 (BNXT_ULP_HF9_IDX_SVIF_INDEX >> 8) & 0xff,
5334                 BNXT_ULP_HF9_IDX_SVIF_INDEX & 0xff,
5335                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
5336                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
5337         },
5338         /* class_tid: 9, wh_plus, table: l2_cntxt_tcam_0 */
5339         {
5340         .description = "l2_ivlan_vid",
5341         .field_bit_size = 12,
5342         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5343         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5344         },
5345         {
5346         .description = "l2_ovlan_vid",
5347         .field_bit_size = 12,
5348         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5349         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5350         },
5351         {
5352         .description = "mac0_l2_dst",
5353         .field_bit_size = 48,
5354         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5355         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5356         },
5357         {
5358         .description = "svif",
5359         .field_bit_size = 8,
5360         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
5361         .mask_operand = {
5362                 (BNXT_ULP_HF9_IDX_SVIF_INDEX >> 8) & 0xff,
5363                 BNXT_ULP_HF9_IDX_SVIF_INDEX & 0xff,
5364                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
5365                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
5366         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
5367         .spec_operand = {
5368                 (BNXT_ULP_HF9_IDX_SVIF_INDEX >> 8) & 0xff,
5369                 BNXT_ULP_HF9_IDX_SVIF_INDEX & 0xff,
5370                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
5371                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
5372         },
5373         {
5374         .description = "sparif",
5375         .field_bit_size = 4,
5376         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5377         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5378         },
5379         {
5380         .description = "tl2_ivlan_vid",
5381         .field_bit_size = 12,
5382         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5383         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5384         },
5385         {
5386         .description = "tl2_ovlan_vid",
5387         .field_bit_size = 12,
5388         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5389         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5390         },
5391         {
5392         .description = "mac1_tl2_dst",
5393         .field_bit_size = 48,
5394         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5395         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5396         },
5397         {
5398         .description = "l2_num_vtags",
5399         .field_bit_size = 2,
5400         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5401         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5402         },
5403         {
5404         .description = "tl2_num_vtags",
5405         .field_bit_size = 2,
5406         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5407         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5408         },
5409         {
5410         .description = "tun_hdr_type",
5411         .field_bit_size = 4,
5412         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5413         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5414         },
5415         {
5416         .description = "key_type",
5417         .field_bit_size = 2,
5418         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5419         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5420         },
5421         {
5422         .description = "valid",
5423         .field_bit_size = 1,
5424         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
5425         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
5426                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
5427         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
5428         .spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
5429                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
5430         },
5431         /* class_tid: 9, wh_plus, table: profile_tcam_cache_0 */
5432         {
5433         .description = "recycle",
5434         .field_bit_size = 1,
5435         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5436         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5437         },
5438         {
5439         .description = "prof_func_id",
5440         .field_bit_size = 7,
5441         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5442         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
5443         .spec_operand = {
5444                 (BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID >> 8) & 0xff,
5445                 BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID & 0xff,
5446                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
5447                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
5448         },
5449         {
5450         .description = "class_tid",
5451         .field_bit_size = 8,
5452         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5453         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
5454         .spec_operand = {
5455                 (BNXT_ULP_REGFILE_INDEX_CLASS_TID >> 8) & 0xff,
5456                 BNXT_ULP_REGFILE_INDEX_CLASS_TID & 0xff,
5457                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
5458                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
5459         },
5460         /* class_tid: 9, wh_plus, table: profile_tcam_0 */
5461         {
5462         .description = "l4_hdr_is_udp_tcp",
5463         .field_bit_size = 1,
5464         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5465         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5466         },
5467         {
5468         .description = "l4_hdr_type",
5469         .field_bit_size = 4,
5470         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
5471         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
5472                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
5473         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5474         },
5475         {
5476         .description = "l4_hdr_error",
5477         .field_bit_size = 1,
5478         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
5479         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
5480                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
5481         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5482         },
5483         {
5484         .description = "l4_hdr_valid",
5485         .field_bit_size = 1,
5486         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
5487         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
5488                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
5489         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
5490         .spec_operand = {
5491                 BNXT_ULP_SYM_L4_HDR_VALID_YES,
5492                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
5493                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
5494         },
5495         {
5496         .description = "l3_ipv6_cmp_dst",
5497         .field_bit_size = 1,
5498         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5499         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5500         },
5501         {
5502         .description = "l3_ipv6_cmp_src",
5503         .field_bit_size = 1,
5504         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5505         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5506         },
5507         {
5508         .description = "l3_hdr_isIP",
5509         .field_bit_size = 1,
5510         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5511         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5512         },
5513         {
5514         .description = "l3_hdr_type",
5515         .field_bit_size = 4,
5516         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
5517         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
5518                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
5519         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5520         },
5521         {
5522         .description = "l3_hdr_error",
5523         .field_bit_size = 1,
5524         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
5525         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
5526                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
5527         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5528         },
5529         {
5530         .description = "l3_hdr_valid",
5531         .field_bit_size = 1,
5532         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
5533         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
5534                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
5535         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
5536         .spec_operand = {
5537                 BNXT_ULP_SYM_L3_HDR_VALID_YES,
5538                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
5539                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
5540         },
5541         {
5542         .description = "l2_two_vtags",
5543         .field_bit_size = 1,
5544         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5545         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5546         },
5547         {
5548         .description = "l2_vtag_present",
5549         .field_bit_size = 1,
5550         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5551         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5552         },
5553         {
5554         .description = "l2_uc_mc_bc",
5555         .field_bit_size = 2,
5556         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
5557         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
5558                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
5559         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5560         },
5561         {
5562         .description = "l2_hdr_type",
5563         .field_bit_size = 2,
5564         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
5565         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
5566                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
5567         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5568         },
5569         {
5570         .description = "l2_hdr_error",
5571         .field_bit_size = 1,
5572         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
5573         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
5574                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
5575         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5576         },
5577         {
5578         .description = "l2_hdr_valid",
5579         .field_bit_size = 1,
5580         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
5581         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
5582                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
5583         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
5584         .spec_operand = {
5585                 BNXT_ULP_SYM_L2_HDR_VALID_YES,
5586                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
5587                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
5588         },
5589         {
5590         .description = "tun_hdr_flags",
5591         .field_bit_size = 3,
5592         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5593         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5594         },
5595         {
5596         .description = "tun_hdr_type",
5597         .field_bit_size = 4,
5598         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5599         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5600         },
5601         {
5602         .description = "tun_hdr_error",
5603         .field_bit_size = 1,
5604         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5605         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5606         },
5607         {
5608         .description = "tun_hdr_valid",
5609         .field_bit_size = 1,
5610         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
5611         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
5612                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
5613         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5614         },
5615         {
5616         .description = "tl4_hdr_is_udp_tcp",
5617         .field_bit_size = 1,
5618         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5619         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5620         },
5621         {
5622         .description = "tl4_hdr_type",
5623         .field_bit_size = 4,
5624         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5625         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5626         },
5627         {
5628         .description = "tl4_hdr_error",
5629         .field_bit_size = 1,
5630         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5631         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5632         },
5633         {
5634         .description = "tl4_hdr_valid",
5635         .field_bit_size = 1,
5636         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
5637         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
5638                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
5639         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5640         },
5641         {
5642         .description = "tl3_ipv6_cmp_dst",
5643         .field_bit_size = 1,
5644         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5645         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5646         },
5647         {
5648         .description = "tl3_ipv6_cmp_src",
5649         .field_bit_size = 1,
5650         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5651         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5652         },
5653         {
5654         .description = "tl3_hdr_isIP",
5655         .field_bit_size = 1,
5656         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5657         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5658         },
5659         {
5660         .description = "tl3_hdr_type",
5661         .field_bit_size = 4,
5662         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5663         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5664         },
5665         {
5666         .description = "tl3_hdr_error",
5667         .field_bit_size = 1,
5668         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5669         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5670         },
5671         {
5672         .description = "tl3_hdr_valid",
5673         .field_bit_size = 1,
5674         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
5675         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
5676                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
5677         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5678         },
5679         {
5680         .description = "tl2_two_vtags",
5681         .field_bit_size = 1,
5682         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5683         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5684         },
5685         {
5686         .description = "tl2_vtag_present",
5687         .field_bit_size = 1,
5688         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5689         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5690         },
5691         {
5692         .description = "tl2_uc_mc_bc",
5693         .field_bit_size = 2,
5694         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5695         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5696         },
5697         {
5698         .description = "tl2_hdr_type",
5699         .field_bit_size = 2,
5700         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5701         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5702         },
5703         {
5704         .description = "tl2_hdr_valid",
5705         .field_bit_size = 1,
5706         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
5707         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
5708                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
5709         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5710         },
5711         {
5712         .description = "hrec_next",
5713         .field_bit_size = 1,
5714         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5715         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5716         },
5717         {
5718         .description = "reserved",
5719         .field_bit_size = 9,
5720         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5721         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5722         },
5723         {
5724         .description = "prof_func_id",
5725         .field_bit_size = 7,
5726         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
5727         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
5728                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
5729         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
5730         .spec_operand = {
5731                 (BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID >> 8) & 0xff,
5732                 BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID & 0xff,
5733                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
5734                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
5735         },
5736         {
5737         .description = "agg_error",
5738         .field_bit_size = 1,
5739         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5740         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5741         },
5742         {
5743         .description = "recycle_cnt",
5744         .field_bit_size = 2,
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 = "pkt_type_0",
5752         .field_bit_size = 2,
5753         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5754         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5755         },
5756         {
5757         .description = "pkt_type_1",
5758         .field_bit_size = 2,
5759         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
5760         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
5761                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
5762         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5763         },
5764         {
5765         .description = "valid",
5766         .field_bit_size = 1,
5767         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
5768         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
5769                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
5770         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
5771         .spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
5772                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
5773         },
5774         /* class_tid: 9, wh_plus, table: ext_em_0 */
5775         {
5776         .description = "spare",
5777         .field_bit_size = 251,
5778         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5779         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5780         },
5781         {
5782         .description = "local_cos",
5783         .field_bit_size = 3,
5784         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5785         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5786         },
5787         {
5788         .description = "l4_dst_port",
5789         .field_bit_size = 16,
5790         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5791         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
5792         .spec_operand = {
5793                 (BNXT_ULP_HF9_IDX_O_TCP_DST_PORT >> 8) & 0xff,
5794                 BNXT_ULP_HF9_IDX_O_TCP_DST_PORT & 0xff,
5795                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
5796                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
5797         },
5798         {
5799         .description = "l4_src_port",
5800         .field_bit_size = 16,
5801         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5802         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
5803         .spec_operand = {
5804                 (BNXT_ULP_HF9_IDX_O_TCP_SRC_PORT >> 8) & 0xff,
5805                 BNXT_ULP_HF9_IDX_O_TCP_SRC_PORT & 0xff,
5806                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
5807                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
5808         },
5809         {
5810         .description = "ip_proto",
5811         .field_bit_size = 8,
5812         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5813         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
5814         .spec_operand = {
5815                 BNXT_ULP_SYM_IP_PROTO_TCP,
5816                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
5817                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
5818         },
5819         {
5820         .description = "ipv4_dst_addr",
5821         .field_bit_size = 32,
5822         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5823         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
5824         .spec_operand = {
5825                 (BNXT_ULP_HF9_IDX_O_IPV4_DST_ADDR >> 8) & 0xff,
5826                 BNXT_ULP_HF9_IDX_O_IPV4_DST_ADDR & 0xff,
5827                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
5828                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
5829         },
5830         {
5831         .description = "ipv4_src_addr",
5832         .field_bit_size = 32,
5833         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5834         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
5835         .spec_operand = {
5836                 (BNXT_ULP_HF9_IDX_O_IPV4_SRC_ADDR >> 8) & 0xff,
5837                 BNXT_ULP_HF9_IDX_O_IPV4_SRC_ADDR & 0xff,
5838                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
5839                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
5840         },
5841         {
5842         .description = "l2_src_mac",
5843         .field_bit_size = 48,
5844         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5845         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5846         },
5847         {
5848         .description = "tun_id",
5849         .field_bit_size = 24,
5850         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5851         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5852         },
5853         {
5854         .description = "l2_cntxt_id",
5855         .field_bit_size = 10,
5856         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5857         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
5858         .spec_operand = {
5859                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
5860                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
5861                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
5862                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
5863         },
5864         {
5865         .description = "em_profile_id",
5866         .field_bit_size = 8,
5867         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5868         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
5869         .spec_operand = {
5870                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
5871                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
5872                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
5873                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
5874         },
5875         /* class_tid: 9, wh_plus, table: int_em_0 */
5876         {
5877         .description = "spare",
5878         .field_bit_size = 3,
5879         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5880         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5881         },
5882         {
5883         .description = "local_cos",
5884         .field_bit_size = 3,
5885         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5886         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5887         },
5888         {
5889         .description = "l4_dst_port",
5890         .field_bit_size = 16,
5891         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5892         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
5893         .spec_operand = {
5894                 (BNXT_ULP_HF9_IDX_O_TCP_DST_PORT >> 8) & 0xff,
5895                 BNXT_ULP_HF9_IDX_O_TCP_DST_PORT & 0xff,
5896                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
5897                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
5898         },
5899         {
5900         .description = "l4_src_port",
5901         .field_bit_size = 16,
5902         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5903         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
5904         .spec_operand = {
5905                 (BNXT_ULP_HF9_IDX_O_TCP_SRC_PORT >> 8) & 0xff,
5906                 BNXT_ULP_HF9_IDX_O_TCP_SRC_PORT & 0xff,
5907                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
5908                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
5909         },
5910         {
5911         .description = "ip_proto",
5912         .field_bit_size = 8,
5913         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5914         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
5915         .spec_operand = {
5916                 BNXT_ULP_SYM_IP_PROTO_TCP,
5917                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
5918                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
5919         },
5920         {
5921         .description = "ipv4_dst_addr",
5922         .field_bit_size = 32,
5923         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5924         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
5925         .spec_operand = {
5926                 (BNXT_ULP_HF9_IDX_O_IPV4_DST_ADDR >> 8) & 0xff,
5927                 BNXT_ULP_HF9_IDX_O_IPV4_DST_ADDR & 0xff,
5928                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
5929                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
5930         },
5931         {
5932         .description = "ipv4_src_addr",
5933         .field_bit_size = 32,
5934         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5935         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
5936         .spec_operand = {
5937                 (BNXT_ULP_HF9_IDX_O_IPV4_SRC_ADDR >> 8) & 0xff,
5938                 BNXT_ULP_HF9_IDX_O_IPV4_SRC_ADDR & 0xff,
5939                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
5940                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
5941         },
5942         {
5943         .description = "l2_src_mac",
5944         .field_bit_size = 48,
5945         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5946         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5947         },
5948         {
5949         .description = "tun_id",
5950         .field_bit_size = 24,
5951         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5952         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5953         },
5954         {
5955         .description = "l2_cntxt_id",
5956         .field_bit_size = 10,
5957         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5958         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
5959         .spec_operand = {
5960                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
5961                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
5962                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
5963                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
5964         },
5965         {
5966         .description = "em_profile_id",
5967         .field_bit_size = 8,
5968         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5969         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
5970         .spec_operand = {
5971                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
5972                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
5973                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
5974                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
5975         },
5976         /* class_tid: 10, wh_plus, table: l2_cntxt_cache_0 */
5977         {
5978         .description = "svif",
5979         .field_bit_size = 8,
5980         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5981         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
5982         .spec_operand = {
5983                 (BNXT_ULP_HF10_IDX_SVIF_INDEX >> 8) & 0xff,
5984                 BNXT_ULP_HF10_IDX_SVIF_INDEX & 0xff,
5985                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
5986                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
5987         },
5988         /* class_tid: 10, wh_plus, table: l2_cntxt_tcam_0 */
5989         {
5990         .description = "l2_ivlan_vid",
5991         .field_bit_size = 12,
5992         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5993         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5994         },
5995         {
5996         .description = "l2_ovlan_vid",
5997         .field_bit_size = 12,
5998         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5999         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6000         },
6001         {
6002         .description = "mac0_l2_dst",
6003         .field_bit_size = 48,
6004         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6005         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6006         },
6007         {
6008         .description = "svif",
6009         .field_bit_size = 8,
6010         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
6011         .mask_operand = {
6012                 (BNXT_ULP_HF10_IDX_SVIF_INDEX >> 8) & 0xff,
6013                 BNXT_ULP_HF10_IDX_SVIF_INDEX & 0xff,
6014                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
6015                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
6016         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
6017         .spec_operand = {
6018                 (BNXT_ULP_HF10_IDX_SVIF_INDEX >> 8) & 0xff,
6019                 BNXT_ULP_HF10_IDX_SVIF_INDEX & 0xff,
6020                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
6021                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
6022         },
6023         {
6024         .description = "sparif",
6025         .field_bit_size = 4,
6026         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6027         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6028         },
6029         {
6030         .description = "tl2_ivlan_vid",
6031         .field_bit_size = 12,
6032         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6033         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6034         },
6035         {
6036         .description = "tl2_ovlan_vid",
6037         .field_bit_size = 12,
6038         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6039         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6040         },
6041         {
6042         .description = "mac1_tl2_dst",
6043         .field_bit_size = 48,
6044         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6045         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6046         },
6047         {
6048         .description = "l2_num_vtags",
6049         .field_bit_size = 2,
6050         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6051         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6052         },
6053         {
6054         .description = "tl2_num_vtags",
6055         .field_bit_size = 2,
6056         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6057         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6058         },
6059         {
6060         .description = "tun_hdr_type",
6061         .field_bit_size = 4,
6062         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6063         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6064         },
6065         {
6066         .description = "key_type",
6067         .field_bit_size = 2,
6068         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6069         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6070         },
6071         {
6072         .description = "valid",
6073         .field_bit_size = 1,
6074         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
6075         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
6076                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
6077         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
6078         .spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
6079                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
6080         },
6081         /* class_tid: 10, wh_plus, table: profile_tcam_cache_0 */
6082         {
6083         .description = "recycle",
6084         .field_bit_size = 1,
6085         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6086         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6087         },
6088         {
6089         .description = "prof_func_id",
6090         .field_bit_size = 7,
6091         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6092         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
6093         .spec_operand = {
6094                 (BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID >> 8) & 0xff,
6095                 BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID & 0xff,
6096                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
6097                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
6098         },
6099         {
6100         .description = "class_tid",
6101         .field_bit_size = 8,
6102         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6103         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
6104         .spec_operand = {
6105                 (BNXT_ULP_REGFILE_INDEX_CLASS_TID >> 8) & 0xff,
6106                 BNXT_ULP_REGFILE_INDEX_CLASS_TID & 0xff,
6107                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
6108                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
6109         },
6110         /* class_tid: 10, wh_plus, table: profile_tcam_0 */
6111         {
6112         .description = "l4_hdr_is_udp_tcp",
6113         .field_bit_size = 1,
6114         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6115         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6116         },
6117         {
6118         .description = "l4_hdr_type",
6119         .field_bit_size = 4,
6120         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
6121         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
6122                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
6123         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
6124         .spec_operand = {
6125                 BNXT_ULP_SYM_L4_HDR_TYPE_UDP,
6126                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
6127                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
6128         },
6129         {
6130         .description = "l4_hdr_error",
6131         .field_bit_size = 1,
6132         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
6133         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
6134                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
6135         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6136         },
6137         {
6138         .description = "l4_hdr_valid",
6139         .field_bit_size = 1,
6140         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
6141         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
6142                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
6143         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
6144         .spec_operand = {
6145                 BNXT_ULP_SYM_L4_HDR_VALID_YES,
6146                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
6147                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
6148         },
6149         {
6150         .description = "l3_ipv6_cmp_dst",
6151         .field_bit_size = 1,
6152         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6153         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6154         },
6155         {
6156         .description = "l3_ipv6_cmp_src",
6157         .field_bit_size = 1,
6158         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6159         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6160         },
6161         {
6162         .description = "l3_hdr_isIP",
6163         .field_bit_size = 1,
6164         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6165         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6166         },
6167         {
6168         .description = "l3_hdr_type",
6169         .field_bit_size = 4,
6170         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
6171         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
6172                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
6173         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
6174         .spec_operand = {
6175                 BNXT_ULP_SYM_L3_HDR_TYPE_IPV6,
6176                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
6177                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
6178         },
6179         {
6180         .description = "l3_hdr_error",
6181         .field_bit_size = 1,
6182         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
6183         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
6184                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
6185         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6186         },
6187         {
6188         .description = "l3_hdr_valid",
6189         .field_bit_size = 1,
6190         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
6191         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
6192                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
6193         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
6194         .spec_operand = {
6195                 BNXT_ULP_SYM_L3_HDR_VALID_YES,
6196                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
6197                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
6198         },
6199         {
6200         .description = "l2_two_vtags",
6201         .field_bit_size = 1,
6202         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6203         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6204         },
6205         {
6206         .description = "l2_vtag_present",
6207         .field_bit_size = 1,
6208         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6209         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6210         },
6211         {
6212         .description = "l2_uc_mc_bc",
6213         .field_bit_size = 2,
6214         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
6215         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
6216                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
6217         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6218         },
6219         {
6220         .description = "l2_hdr_type",
6221         .field_bit_size = 2,
6222         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
6223         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
6224                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
6225         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6226         },
6227         {
6228         .description = "l2_hdr_error",
6229         .field_bit_size = 1,
6230         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
6231         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
6232                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
6233         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6234         },
6235         {
6236         .description = "l2_hdr_valid",
6237         .field_bit_size = 1,
6238         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
6239         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
6240                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
6241         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
6242         .spec_operand = {
6243                 BNXT_ULP_SYM_L2_HDR_VALID_YES,
6244                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
6245                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
6246         },
6247         {
6248         .description = "tun_hdr_flags",
6249         .field_bit_size = 3,
6250         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6251         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6252         },
6253         {
6254         .description = "tun_hdr_type",
6255         .field_bit_size = 4,
6256         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6257         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6258         },
6259         {
6260         .description = "tun_hdr_error",
6261         .field_bit_size = 1,
6262         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6263         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6264         },
6265         {
6266         .description = "tun_hdr_valid",
6267         .field_bit_size = 1,
6268         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
6269         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
6270                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
6271         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6272         },
6273         {
6274         .description = "tl4_hdr_is_udp_tcp",
6275         .field_bit_size = 1,
6276         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6277         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6278         },
6279         {
6280         .description = "tl4_hdr_type",
6281         .field_bit_size = 4,
6282         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6283         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6284         },
6285         {
6286         .description = "tl4_hdr_error",
6287         .field_bit_size = 1,
6288         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6289         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6290         },
6291         {
6292         .description = "tl4_hdr_valid",
6293         .field_bit_size = 1,
6294         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
6295         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
6296                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
6297         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6298         },
6299         {
6300         .description = "tl3_ipv6_cmp_dst",
6301         .field_bit_size = 1,
6302         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6303         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6304         },
6305         {
6306         .description = "tl3_ipv6_cmp_src",
6307         .field_bit_size = 1,
6308         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6309         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6310         },
6311         {
6312         .description = "tl3_hdr_isIP",
6313         .field_bit_size = 1,
6314         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6315         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6316         },
6317         {
6318         .description = "tl3_hdr_type",
6319         .field_bit_size = 4,
6320         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6321         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6322         },
6323         {
6324         .description = "tl3_hdr_error",
6325         .field_bit_size = 1,
6326         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6327         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6328         },
6329         {
6330         .description = "tl3_hdr_valid",
6331         .field_bit_size = 1,
6332         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
6333         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
6334                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
6335         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6336         },
6337         {
6338         .description = "tl2_two_vtags",
6339         .field_bit_size = 1,
6340         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6341         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6342         },
6343         {
6344         .description = "tl2_vtag_present",
6345         .field_bit_size = 1,
6346         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6347         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6348         },
6349         {
6350         .description = "tl2_uc_mc_bc",
6351         .field_bit_size = 2,
6352         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6353         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6354         },
6355         {
6356         .description = "tl2_hdr_type",
6357         .field_bit_size = 2,
6358         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6359         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6360         },
6361         {
6362         .description = "tl2_hdr_valid",
6363         .field_bit_size = 1,
6364         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
6365         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
6366                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
6367         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6368         },
6369         {
6370         .description = "hrec_next",
6371         .field_bit_size = 1,
6372         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6373         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6374         },
6375         {
6376         .description = "reserved",
6377         .field_bit_size = 9,
6378         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6379         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6380         },
6381         {
6382         .description = "prof_func_id",
6383         .field_bit_size = 7,
6384         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
6385         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
6386                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
6387         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
6388         .spec_operand = {
6389                 (BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID >> 8) & 0xff,
6390                 BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID & 0xff,
6391                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
6392                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
6393         },
6394         {
6395         .description = "agg_error",
6396         .field_bit_size = 1,
6397         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6398         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6399         },
6400         {
6401         .description = "recycle_cnt",
6402         .field_bit_size = 2,
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 = "pkt_type_0",
6410         .field_bit_size = 2,
6411         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6412         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6413         },
6414         {
6415         .description = "pkt_type_1",
6416         .field_bit_size = 2,
6417         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
6418         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
6419                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
6420         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6421         },
6422         {
6423         .description = "valid",
6424         .field_bit_size = 1,
6425         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
6426         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
6427                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
6428         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
6429         .spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
6430                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
6431         },
6432         /* class_tid: 10, wh_plus, table: ext_em_0 */
6433         {
6434         .description = "spare",
6435         .field_bit_size = 59,
6436         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6437         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6438         },
6439         {
6440         .description = "local_cos",
6441         .field_bit_size = 3,
6442         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6443         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6444         },
6445         {
6446         .description = "l4_dst_port",
6447         .field_bit_size = 16,
6448         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6449         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
6450         .spec_operand = {
6451                 (BNXT_ULP_HF10_IDX_O_UDP_DST_PORT >> 8) & 0xff,
6452                 BNXT_ULP_HF10_IDX_O_UDP_DST_PORT & 0xff,
6453                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
6454                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
6455         },
6456         {
6457         .description = "l4_src_port",
6458         .field_bit_size = 16,
6459         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6460         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
6461         .spec_operand = {
6462                 (BNXT_ULP_HF10_IDX_O_UDP_SRC_PORT >> 8) & 0xff,
6463                 BNXT_ULP_HF10_IDX_O_UDP_SRC_PORT & 0xff,
6464                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
6465                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
6466         },
6467         {
6468         .description = "ip_proto",
6469         .field_bit_size = 8,
6470         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6471         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
6472         .spec_operand = {
6473                 BNXT_ULP_SYM_IP_PROTO_UDP,
6474                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
6475                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
6476         },
6477         {
6478         .description = "ipv6_dst_addr",
6479         .field_bit_size = 128,
6480         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6481         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
6482         .spec_operand = {
6483                 (BNXT_ULP_HF10_IDX_O_IPV6_DST_ADDR >> 8) & 0xff,
6484                 BNXT_ULP_HF10_IDX_O_IPV6_DST_ADDR & 0xff,
6485                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
6486                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
6487         },
6488         {
6489         .description = "ipv6_src_addr",
6490         .field_bit_size = 128,
6491         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6492         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
6493         .spec_operand = {
6494                 (BNXT_ULP_HF10_IDX_O_IPV6_SRC_ADDR >> 8) & 0xff,
6495                 BNXT_ULP_HF10_IDX_O_IPV6_SRC_ADDR & 0xff,
6496                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
6497                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
6498         },
6499         {
6500         .description = "l2_src_mac",
6501         .field_bit_size = 48,
6502         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6503         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6504         },
6505         {
6506         .description = "tun_id",
6507         .field_bit_size = 24,
6508         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6509         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6510         },
6511         {
6512         .description = "l2_cntxt_id",
6513         .field_bit_size = 10,
6514         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6515         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
6516         .spec_operand = {
6517                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
6518                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
6519                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
6520                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
6521         },
6522         {
6523         .description = "em_profile_id",
6524         .field_bit_size = 8,
6525         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6526         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
6527         .spec_operand = {
6528                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
6529                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
6530                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
6531                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
6532         },
6533         /* class_tid: 10, wh_plus, table: int_em_0 */
6534         {
6535         .description = "spare",
6536         .field_bit_size = 3,
6537         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6538         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6539         },
6540         {
6541         .description = "local_cos",
6542         .field_bit_size = 3,
6543         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6544         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6545         },
6546         {
6547         .description = "l4_dst_port",
6548         .field_bit_size = 16,
6549         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6550         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
6551         .spec_operand = {
6552                 (BNXT_ULP_HF10_IDX_O_UDP_DST_PORT >> 8) & 0xff,
6553                 BNXT_ULP_HF10_IDX_O_UDP_DST_PORT & 0xff,
6554                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
6555                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
6556         },
6557         {
6558         .description = "l4_src_port",
6559         .field_bit_size = 16,
6560         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6561         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
6562         .spec_operand = {
6563                 (BNXT_ULP_HF10_IDX_O_UDP_SRC_PORT >> 8) & 0xff,
6564                 BNXT_ULP_HF10_IDX_O_UDP_SRC_PORT & 0xff,
6565                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
6566                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
6567         },
6568         {
6569         .description = "ip_proto",
6570         .field_bit_size = 8,
6571         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6572         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
6573         .spec_operand = {
6574                 BNXT_ULP_SYM_IP_PROTO_UDP,
6575                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
6576                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
6577         },
6578         {
6579         .description = "ipv6_dst_addr",
6580         .field_bit_size = 128,
6581         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6582         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
6583         .spec_operand = {
6584                 (BNXT_ULP_HF10_IDX_O_IPV6_DST_ADDR >> 8) & 0xff,
6585                 BNXT_ULP_HF10_IDX_O_IPV6_DST_ADDR & 0xff,
6586                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
6587                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
6588         },
6589         {
6590         .description = "ipv6_src_addr",
6591         .field_bit_size = 128,
6592         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6593         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
6594         .spec_operand = {
6595                 (BNXT_ULP_HF10_IDX_O_IPV6_SRC_ADDR >> 8) & 0xff,
6596                 BNXT_ULP_HF10_IDX_O_IPV6_SRC_ADDR & 0xff,
6597                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
6598                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
6599         },
6600         {
6601         .description = "l2_src_mac",
6602         .field_bit_size = 48,
6603         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6604         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6605         },
6606         {
6607         .description = "tun_id",
6608         .field_bit_size = 24,
6609         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6610         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6611         },
6612         {
6613         .description = "l2_cntxt_id",
6614         .field_bit_size = 10,
6615         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6616         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
6617         .spec_operand = {
6618                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
6619                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
6620                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
6621                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
6622         },
6623         {
6624         .description = "em_profile_id",
6625         .field_bit_size = 8,
6626         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6627         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
6628         .spec_operand = {
6629                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
6630                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
6631                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
6632                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
6633         },
6634         /* class_tid: 11, wh_plus, table: l2_cntxt_cache_0 */
6635         {
6636         .description = "svif",
6637         .field_bit_size = 8,
6638         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6639         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
6640         .spec_operand = {
6641                 (BNXT_ULP_HF11_IDX_SVIF_INDEX >> 8) & 0xff,
6642                 BNXT_ULP_HF11_IDX_SVIF_INDEX & 0xff,
6643                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
6644                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
6645         },
6646         /* class_tid: 11, wh_plus, table: l2_cntxt_tcam_0 */
6647         {
6648         .description = "l2_ivlan_vid",
6649         .field_bit_size = 12,
6650         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6651         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6652         },
6653         {
6654         .description = "l2_ovlan_vid",
6655         .field_bit_size = 12,
6656         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6657         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6658         },
6659         {
6660         .description = "mac0_l2_dst",
6661         .field_bit_size = 48,
6662         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6663         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6664         },
6665         {
6666         .description = "svif",
6667         .field_bit_size = 8,
6668         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
6669         .mask_operand = {
6670                 (BNXT_ULP_HF11_IDX_SVIF_INDEX >> 8) & 0xff,
6671                 BNXT_ULP_HF11_IDX_SVIF_INDEX & 0xff,
6672                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
6673                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
6674         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
6675         .spec_operand = {
6676                 (BNXT_ULP_HF11_IDX_SVIF_INDEX >> 8) & 0xff,
6677                 BNXT_ULP_HF11_IDX_SVIF_INDEX & 0xff,
6678                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
6679                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
6680         },
6681         {
6682         .description = "sparif",
6683         .field_bit_size = 4,
6684         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6685         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6686         },
6687         {
6688         .description = "tl2_ivlan_vid",
6689         .field_bit_size = 12,
6690         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6691         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6692         },
6693         {
6694         .description = "tl2_ovlan_vid",
6695         .field_bit_size = 12,
6696         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6697         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6698         },
6699         {
6700         .description = "mac1_tl2_dst",
6701         .field_bit_size = 48,
6702         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6703         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6704         },
6705         {
6706         .description = "l2_num_vtags",
6707         .field_bit_size = 2,
6708         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6709         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6710         },
6711         {
6712         .description = "tl2_num_vtags",
6713         .field_bit_size = 2,
6714         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6715         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6716         },
6717         {
6718         .description = "tun_hdr_type",
6719         .field_bit_size = 4,
6720         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6721         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6722         },
6723         {
6724         .description = "key_type",
6725         .field_bit_size = 2,
6726         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6727         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6728         },
6729         {
6730         .description = "valid",
6731         .field_bit_size = 1,
6732         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
6733         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
6734                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
6735         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
6736         .spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
6737                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
6738         },
6739         /* class_tid: 11, wh_plus, table: profile_tcam_cache_0 */
6740         {
6741         .description = "recycle",
6742         .field_bit_size = 1,
6743         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6744         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6745         },
6746         {
6747         .description = "prof_func_id",
6748         .field_bit_size = 7,
6749         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6750         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
6751         .spec_operand = {
6752                 (BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID >> 8) & 0xff,
6753                 BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID & 0xff,
6754                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
6755                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
6756         },
6757         {
6758         .description = "class_tid",
6759         .field_bit_size = 8,
6760         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6761         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
6762         .spec_operand = {
6763                 (BNXT_ULP_REGFILE_INDEX_CLASS_TID >> 8) & 0xff,
6764                 BNXT_ULP_REGFILE_INDEX_CLASS_TID & 0xff,
6765                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
6766                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
6767         },
6768         /* class_tid: 11, wh_plus, table: profile_tcam_0 */
6769         {
6770         .description = "l4_hdr_is_udp_tcp",
6771         .field_bit_size = 1,
6772         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6773         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6774         },
6775         {
6776         .description = "l4_hdr_type",
6777         .field_bit_size = 4,
6778         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
6779         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
6780                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
6781         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6782         },
6783         {
6784         .description = "l4_hdr_error",
6785         .field_bit_size = 1,
6786         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
6787         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
6788                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
6789         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6790         },
6791         {
6792         .description = "l4_hdr_valid",
6793         .field_bit_size = 1,
6794         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
6795         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
6796                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
6797         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
6798         .spec_operand = {
6799                 BNXT_ULP_SYM_L4_HDR_VALID_YES,
6800                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
6801                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
6802         },
6803         {
6804         .description = "l3_ipv6_cmp_dst",
6805         .field_bit_size = 1,
6806         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6807         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6808         },
6809         {
6810         .description = "l3_ipv6_cmp_src",
6811         .field_bit_size = 1,
6812         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6813         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6814         },
6815         {
6816         .description = "l3_hdr_isIP",
6817         .field_bit_size = 1,
6818         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6819         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6820         },
6821         {
6822         .description = "l3_hdr_type",
6823         .field_bit_size = 4,
6824         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
6825         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
6826                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
6827         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
6828         .spec_operand = {
6829                 BNXT_ULP_SYM_L3_HDR_TYPE_IPV6,
6830                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
6831                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
6832         },
6833         {
6834         .description = "l3_hdr_error",
6835         .field_bit_size = 1,
6836         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
6837         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
6838                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
6839         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6840         },
6841         {
6842         .description = "l3_hdr_valid",
6843         .field_bit_size = 1,
6844         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
6845         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
6846                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
6847         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
6848         .spec_operand = {
6849                 BNXT_ULP_SYM_L3_HDR_VALID_YES,
6850                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
6851                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
6852         },
6853         {
6854         .description = "l2_two_vtags",
6855         .field_bit_size = 1,
6856         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6857         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6858         },
6859         {
6860         .description = "l2_vtag_present",
6861         .field_bit_size = 1,
6862         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6863         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6864         },
6865         {
6866         .description = "l2_uc_mc_bc",
6867         .field_bit_size = 2,
6868         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
6869         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
6870                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
6871         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6872         },
6873         {
6874         .description = "l2_hdr_type",
6875         .field_bit_size = 2,
6876         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
6877         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
6878                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
6879         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6880         },
6881         {
6882         .description = "l2_hdr_error",
6883         .field_bit_size = 1,
6884         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
6885         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
6886                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
6887         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6888         },
6889         {
6890         .description = "l2_hdr_valid",
6891         .field_bit_size = 1,
6892         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
6893         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
6894                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
6895         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
6896         .spec_operand = {
6897                 BNXT_ULP_SYM_L2_HDR_VALID_YES,
6898                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
6899                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
6900         },
6901         {
6902         .description = "tun_hdr_flags",
6903         .field_bit_size = 3,
6904         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6905         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6906         },
6907         {
6908         .description = "tun_hdr_type",
6909         .field_bit_size = 4,
6910         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6911         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6912         },
6913         {
6914         .description = "tun_hdr_error",
6915         .field_bit_size = 1,
6916         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6917         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6918         },
6919         {
6920         .description = "tun_hdr_valid",
6921         .field_bit_size = 1,
6922         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
6923         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
6924                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
6925         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6926         },
6927         {
6928         .description = "tl4_hdr_is_udp_tcp",
6929         .field_bit_size = 1,
6930         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6931         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6932         },
6933         {
6934         .description = "tl4_hdr_type",
6935         .field_bit_size = 4,
6936         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6937         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6938         },
6939         {
6940         .description = "tl4_hdr_error",
6941         .field_bit_size = 1,
6942         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6943         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6944         },
6945         {
6946         .description = "tl4_hdr_valid",
6947         .field_bit_size = 1,
6948         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
6949         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
6950                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
6951         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6952         },
6953         {
6954         .description = "tl3_ipv6_cmp_dst",
6955         .field_bit_size = 1,
6956         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6957         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6958         },
6959         {
6960         .description = "tl3_ipv6_cmp_src",
6961         .field_bit_size = 1,
6962         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6963         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6964         },
6965         {
6966         .description = "tl3_hdr_isIP",
6967         .field_bit_size = 1,
6968         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6969         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6970         },
6971         {
6972         .description = "tl3_hdr_type",
6973         .field_bit_size = 4,
6974         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6975         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6976         },
6977         {
6978         .description = "tl3_hdr_error",
6979         .field_bit_size = 1,
6980         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6981         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6982         },
6983         {
6984         .description = "tl3_hdr_valid",
6985         .field_bit_size = 1,
6986         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
6987         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
6988                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
6989         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6990         },
6991         {
6992         .description = "tl2_two_vtags",
6993         .field_bit_size = 1,
6994         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6995         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6996         },
6997         {
6998         .description = "tl2_vtag_present",
6999         .field_bit_size = 1,
7000         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7001         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7002         },
7003         {
7004         .description = "tl2_uc_mc_bc",
7005         .field_bit_size = 2,
7006         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7007         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7008         },
7009         {
7010         .description = "tl2_hdr_type",
7011         .field_bit_size = 2,
7012         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7013         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7014         },
7015         {
7016         .description = "tl2_hdr_valid",
7017         .field_bit_size = 1,
7018         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
7019         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
7020                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
7021         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7022         },
7023         {
7024         .description = "hrec_next",
7025         .field_bit_size = 1,
7026         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7027         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7028         },
7029         {
7030         .description = "reserved",
7031         .field_bit_size = 9,
7032         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7033         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7034         },
7035         {
7036         .description = "prof_func_id",
7037         .field_bit_size = 7,
7038         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
7039         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
7040                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
7041         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
7042         .spec_operand = {
7043                 (BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID >> 8) & 0xff,
7044                 BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID & 0xff,
7045                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
7046                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
7047         },
7048         {
7049         .description = "agg_error",
7050         .field_bit_size = 1,
7051         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7052         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7053         },
7054         {
7055         .description = "recycle_cnt",
7056         .field_bit_size = 2,
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 = "pkt_type_0",
7064         .field_bit_size = 2,
7065         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7066         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7067         },
7068         {
7069         .description = "pkt_type_1",
7070         .field_bit_size = 2,
7071         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
7072         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
7073                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
7074         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7075         },
7076         {
7077         .description = "valid",
7078         .field_bit_size = 1,
7079         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
7080         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
7081                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
7082         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
7083         .spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
7084                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
7085         },
7086         /* class_tid: 11, wh_plus, table: ext_em_0 */
7087         {
7088         .description = "spare",
7089         .field_bit_size = 59,
7090         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7091         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7092         },
7093         {
7094         .description = "local_cos",
7095         .field_bit_size = 3,
7096         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7097         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7098         },
7099         {
7100         .description = "l4_dst_port",
7101         .field_bit_size = 16,
7102         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7103         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
7104         .spec_operand = {
7105                 (BNXT_ULP_HF11_IDX_O_TCP_DST_PORT >> 8) & 0xff,
7106                 BNXT_ULP_HF11_IDX_O_TCP_DST_PORT & 0xff,
7107                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
7108                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
7109         },
7110         {
7111         .description = "l4_src_port",
7112         .field_bit_size = 16,
7113         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7114         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
7115         .spec_operand = {
7116                 (BNXT_ULP_HF11_IDX_O_TCP_SRC_PORT >> 8) & 0xff,
7117                 BNXT_ULP_HF11_IDX_O_TCP_SRC_PORT & 0xff,
7118                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
7119                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
7120         },
7121         {
7122         .description = "ip_proto",
7123         .field_bit_size = 8,
7124         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7125         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
7126         .spec_operand = {
7127                 BNXT_ULP_SYM_IP_PROTO_TCP,
7128                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
7129                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
7130         },
7131         {
7132         .description = "ipv6_dst_addr",
7133         .field_bit_size = 128,
7134         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7135         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
7136         .spec_operand = {
7137                 (BNXT_ULP_HF11_IDX_O_IPV6_DST_ADDR >> 8) & 0xff,
7138                 BNXT_ULP_HF11_IDX_O_IPV6_DST_ADDR & 0xff,
7139                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
7140                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
7141         },
7142         {
7143         .description = "ipv6_src_addr",
7144         .field_bit_size = 128,
7145         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7146         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
7147         .spec_operand = {
7148                 (BNXT_ULP_HF11_IDX_O_IPV6_SRC_ADDR >> 8) & 0xff,
7149                 BNXT_ULP_HF11_IDX_O_IPV6_SRC_ADDR & 0xff,
7150                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
7151                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
7152         },
7153         {
7154         .description = "l2_src_mac",
7155         .field_bit_size = 48,
7156         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7157         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7158         },
7159         {
7160         .description = "tun_id",
7161         .field_bit_size = 24,
7162         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7163         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7164         },
7165         {
7166         .description = "l2_cntxt_id",
7167         .field_bit_size = 10,
7168         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7169         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
7170         .spec_operand = {
7171                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
7172                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
7173                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
7174                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
7175         },
7176         {
7177         .description = "em_profile_id",
7178         .field_bit_size = 8,
7179         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7180         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
7181         .spec_operand = {
7182                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
7183                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
7184                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
7185                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
7186         },
7187         /* class_tid: 11, wh_plus, table: int_em_0 */
7188         {
7189         .description = "spare",
7190         .field_bit_size = 3,
7191         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7192         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7193         },
7194         {
7195         .description = "local_cos",
7196         .field_bit_size = 3,
7197         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7198         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7199         },
7200         {
7201         .description = "l4_dst_port",
7202         .field_bit_size = 16,
7203         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7204         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
7205         .spec_operand = {
7206                 (BNXT_ULP_HF11_IDX_O_TCP_DST_PORT >> 8) & 0xff,
7207                 BNXT_ULP_HF11_IDX_O_TCP_DST_PORT & 0xff,
7208                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
7209                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
7210         },
7211         {
7212         .description = "l4_src_port",
7213         .field_bit_size = 16,
7214         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7215         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
7216         .spec_operand = {
7217                 (BNXT_ULP_HF11_IDX_O_TCP_SRC_PORT >> 8) & 0xff,
7218                 BNXT_ULP_HF11_IDX_O_TCP_SRC_PORT & 0xff,
7219                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
7220                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
7221         },
7222         {
7223         .description = "ip_proto",
7224         .field_bit_size = 8,
7225         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7226         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
7227         .spec_operand = {
7228                 BNXT_ULP_SYM_IP_PROTO_TCP,
7229                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
7230                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
7231         },
7232         {
7233         .description = "ipv6_dst_addr",
7234         .field_bit_size = 128,
7235         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7236         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
7237         .spec_operand = {
7238                 (BNXT_ULP_HF11_IDX_O_IPV6_DST_ADDR >> 8) & 0xff,
7239                 BNXT_ULP_HF11_IDX_O_IPV6_DST_ADDR & 0xff,
7240                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
7241                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
7242         },
7243         {
7244         .description = "ipv6_src_addr",
7245         .field_bit_size = 128,
7246         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7247         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
7248         .spec_operand = {
7249                 (BNXT_ULP_HF11_IDX_O_IPV6_SRC_ADDR >> 8) & 0xff,
7250                 BNXT_ULP_HF11_IDX_O_IPV6_SRC_ADDR & 0xff,
7251                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
7252                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
7253         },
7254         {
7255         .description = "l2_src_mac",
7256         .field_bit_size = 48,
7257         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7258         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7259         },
7260         {
7261         .description = "tun_id",
7262         .field_bit_size = 24,
7263         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7264         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7265         },
7266         {
7267         .description = "l2_cntxt_id",
7268         .field_bit_size = 10,
7269         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7270         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
7271         .spec_operand = {
7272                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
7273                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
7274                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
7275                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
7276         },
7277         {
7278         .description = "em_profile_id",
7279         .field_bit_size = 8,
7280         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7281         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
7282         .spec_operand = {
7283                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
7284                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
7285                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
7286                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
7287         },
7288         /* class_tid: 12, wh_plus, table: l2_cntxt_tcam_0 */
7289         {
7290         .description = "l2_ivlan_vid",
7291         .field_bit_size = 12,
7292         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
7293         .mask_operand = {
7294                 (BNXT_ULP_HF12_IDX_OO_VLAN_VID >> 8) & 0xff,
7295                 BNXT_ULP_HF12_IDX_OO_VLAN_VID & 0xff,
7296                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
7297                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
7298         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
7299         .spec_operand = {
7300                 (BNXT_ULP_HF12_IDX_OO_VLAN_VID >> 8) & 0xff,
7301                 BNXT_ULP_HF12_IDX_OO_VLAN_VID & 0xff,
7302                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
7303                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
7304         },
7305         {
7306         .description = "l2_ovlan_vid",
7307         .field_bit_size = 12,
7308         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7309         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7310         },
7311         {
7312         .description = "mac0_l2_addr",
7313         .field_bit_size = 48,
7314         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
7315         .mask_operand = {
7316                 (BNXT_ULP_HF12_IDX_O_ETH_DMAC >> 8) & 0xff,
7317                 BNXT_ULP_HF12_IDX_O_ETH_DMAC & 0xff,
7318                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
7319                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
7320         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
7321         .spec_operand = {
7322                 (BNXT_ULP_HF12_IDX_O_ETH_DMAC >> 8) & 0xff,
7323                 BNXT_ULP_HF12_IDX_O_ETH_DMAC & 0xff,
7324                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
7325                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
7326         },
7327         {
7328         .description = "svif",
7329         .field_bit_size = 8,
7330         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
7331         .mask_operand = {
7332                 (BNXT_ULP_HF12_IDX_SVIF_INDEX >> 8) & 0xff,
7333                 BNXT_ULP_HF12_IDX_SVIF_INDEX & 0xff,
7334                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
7335                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
7336         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
7337         .spec_operand = {
7338                 (BNXT_ULP_HF12_IDX_SVIF_INDEX >> 8) & 0xff,
7339                 BNXT_ULP_HF12_IDX_SVIF_INDEX & 0xff,
7340                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
7341                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
7342         },
7343         {
7344         .description = "sparif",
7345         .field_bit_size = 4,
7346         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7347         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7348         },
7349         {
7350         .description = "tl2_ivlan_vid",
7351         .field_bit_size = 12,
7352         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7353         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7354         },
7355         {
7356         .description = "tl2_ovlan_vid",
7357         .field_bit_size = 12,
7358         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7359         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7360         },
7361         {
7362         .description = "mac1_tl2_addr",
7363         .field_bit_size = 48,
7364         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7365         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7366         },
7367         {
7368         .description = "l2_num_vtags",
7369         .field_bit_size = 2,
7370         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
7371         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
7372                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
7373         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,
7374         .spec_operand = {
7375                 (BNXT_ULP_CF_IDX_O_VTAG_NUM >> 8) & 0xff,
7376                 BNXT_ULP_CF_IDX_O_VTAG_NUM & 0xff,
7377                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
7378                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
7379         },
7380         {
7381         .description = "tl2_num_vtags",
7382         .field_bit_size = 2,
7383         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7384         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7385         },
7386         {
7387         .description = "tun_hdr_type",
7388         .field_bit_size = 4,
7389         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7390         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7391         },
7392         {
7393         .description = "key_type",
7394         .field_bit_size = 2,
7395         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
7396         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
7397                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
7398         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7399         },
7400         {
7401         .description = "valid",
7402         .field_bit_size = 1,
7403         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
7404         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
7405                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
7406         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
7407         .spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
7408                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
7409         },
7410         /* class_tid: 12, wh_plus, table: profile_tcam_cache_0 */
7411         {
7412         .description = "recycle",
7413         .field_bit_size = 1,
7414         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7415         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7416         },
7417         {
7418         .description = "prof_func_id",
7419         .field_bit_size = 7,
7420         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7421         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
7422         .spec_operand = {
7423                 (BNXT_ULP_GLB_REGFILE_INDEX_L2_PROF_FUNC_ID >> 8) & 0xff,
7424                 BNXT_ULP_GLB_REGFILE_INDEX_L2_PROF_FUNC_ID & 0xff,
7425                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
7426                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
7427         },
7428         {
7429         .description = "class_tid",
7430         .field_bit_size = 8,
7431         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7432         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
7433         .spec_operand = {
7434                 (BNXT_ULP_REGFILE_INDEX_CLASS_TID >> 8) & 0xff,
7435                 BNXT_ULP_REGFILE_INDEX_CLASS_TID & 0xff,
7436                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
7437                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
7438         },
7439         /* class_tid: 12, wh_plus, table: profile_tcam_0 */
7440         {
7441         .description = "l4_hdr_is_udp_tcp",
7442         .field_bit_size = 1,
7443         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7444         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7445         },
7446         {
7447         .description = "l4_hdr_type",
7448         .field_bit_size = 4,
7449         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
7450         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
7451                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
7452         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
7453         .spec_operand = {
7454                 BNXT_ULP_SYM_L4_HDR_TYPE_UDP,
7455                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
7456                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
7457         },
7458         {
7459         .description = "l4_hdr_error",
7460         .field_bit_size = 1,
7461         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
7462         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
7463                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
7464         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7465         },
7466         {
7467         .description = "l4_hdr_valid",
7468         .field_bit_size = 1,
7469         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
7470         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
7471                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
7472         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
7473         .spec_operand = {
7474                 BNXT_ULP_SYM_L4_HDR_VALID_YES,
7475                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
7476                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
7477         },
7478         {
7479         .description = "l3_ipv6_cmp_dst",
7480         .field_bit_size = 1,
7481         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7482         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7483         },
7484         {
7485         .description = "l3_ipv6_cmp_src",
7486         .field_bit_size = 1,
7487         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7488         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7489         },
7490         {
7491         .description = "l3_hdr_isIP",
7492         .field_bit_size = 1,
7493         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7494         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7495         },
7496         {
7497         .description = "l3_hdr_type",
7498         .field_bit_size = 4,
7499         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
7500         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
7501                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
7502         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7503         },
7504         {
7505         .description = "l3_hdr_error",
7506         .field_bit_size = 1,
7507         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
7508         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
7509                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
7510         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7511         },
7512         {
7513         .description = "l3_hdr_valid",
7514         .field_bit_size = 1,
7515         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
7516         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
7517                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
7518         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
7519         .spec_operand = {
7520                 BNXT_ULP_SYM_L3_HDR_VALID_YES,
7521                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
7522                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
7523         },
7524         {
7525         .description = "l2_two_vtags",
7526         .field_bit_size = 1,
7527         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7528         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7529         },
7530         {
7531         .description = "l2_vtag_present",
7532         .field_bit_size = 1,
7533         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7534         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7535         },
7536         {
7537         .description = "l2_uc_mc_bc",
7538         .field_bit_size = 2,
7539         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
7540         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
7541                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
7542         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7543         },
7544         {
7545         .description = "l2_hdr_type",
7546         .field_bit_size = 2,
7547         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
7548         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
7549                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
7550         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7551         },
7552         {
7553         .description = "l2_hdr_error",
7554         .field_bit_size = 1,
7555         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
7556         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
7557                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
7558         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7559         },
7560         {
7561         .description = "l2_hdr_valid",
7562         .field_bit_size = 1,
7563         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
7564         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
7565                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
7566         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
7567         .spec_operand = {
7568                 BNXT_ULP_SYM_L2_HDR_VALID_YES,
7569                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
7570                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
7571         },
7572         {
7573         .description = "tun_hdr_flags",
7574         .field_bit_size = 3,
7575         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7576         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7577         },
7578         {
7579         .description = "tun_hdr_type",
7580         .field_bit_size = 4,
7581         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7582         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7583         },
7584         {
7585         .description = "tun_hdr_error",
7586         .field_bit_size = 1,
7587         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7588         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7589         },
7590         {
7591         .description = "tun_hdr_valid",
7592         .field_bit_size = 1,
7593         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
7594         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
7595                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
7596         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7597         },
7598         {
7599         .description = "tl4_hdr_is_udp_tcp",
7600         .field_bit_size = 1,
7601         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7602         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7603         },
7604         {
7605         .description = "tl4_hdr_type",
7606         .field_bit_size = 4,
7607         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7608         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7609         },
7610         {
7611         .description = "tl4_hdr_error",
7612         .field_bit_size = 1,
7613         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7614         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7615         },
7616         {
7617         .description = "tl4_hdr_valid",
7618         .field_bit_size = 1,
7619         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
7620         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
7621                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
7622         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7623         },
7624         {
7625         .description = "tl3_ipv6_cmp_dst",
7626         .field_bit_size = 1,
7627         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7628         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7629         },
7630         {
7631         .description = "tl3_ipv6_cmp_src",
7632         .field_bit_size = 1,
7633         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7634         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7635         },
7636         {
7637         .description = "tl3_hdr_isIP",
7638         .field_bit_size = 1,
7639         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7640         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7641         },
7642         {
7643         .description = "tl3_hdr_type",
7644         .field_bit_size = 4,
7645         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7646         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7647         },
7648         {
7649         .description = "tl3_hdr_error",
7650         .field_bit_size = 1,
7651         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7652         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7653         },
7654         {
7655         .description = "tl3_hdr_valid",
7656         .field_bit_size = 1,
7657         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
7658         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
7659                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
7660         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7661         },
7662         {
7663         .description = "tl2_two_vtags",
7664         .field_bit_size = 1,
7665         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7666         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7667         },
7668         {
7669         .description = "tl2_vtag_present",
7670         .field_bit_size = 1,
7671         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7672         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7673         },
7674         {
7675         .description = "tl2_uc_mc_bc",
7676         .field_bit_size = 2,
7677         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7678         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7679         },
7680         {
7681         .description = "tl2_hdr_type",
7682         .field_bit_size = 2,
7683         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7684         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7685         },
7686         {
7687         .description = "tl2_hdr_valid",
7688         .field_bit_size = 1,
7689         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
7690         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
7691                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
7692         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7693         },
7694         {
7695         .description = "hrec_next",
7696         .field_bit_size = 1,
7697         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7698         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7699         },
7700         {
7701         .description = "reserved",
7702         .field_bit_size = 9,
7703         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7704         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7705         },
7706         {
7707         .description = "prof_func_id",
7708         .field_bit_size = 7,
7709         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
7710         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
7711                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
7712         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
7713         .spec_operand = {
7714                 (BNXT_ULP_GLB_REGFILE_INDEX_L2_PROF_FUNC_ID >> 8) & 0xff,
7715                 BNXT_ULP_GLB_REGFILE_INDEX_L2_PROF_FUNC_ID & 0xff,
7716                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
7717                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
7718         },
7719         {
7720         .description = "agg_error",
7721         .field_bit_size = 1,
7722         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7723         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7724         },
7725         {
7726         .description = "recycle_cnt",
7727         .field_bit_size = 2,
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 = "pkt_type_0",
7735         .field_bit_size = 2,
7736         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7737         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7738         },
7739         {
7740         .description = "pkt_type_1",
7741         .field_bit_size = 2,
7742         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
7743         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
7744                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
7745         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7746         },
7747         {
7748         .description = "valid",
7749         .field_bit_size = 1,
7750         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
7751         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
7752                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
7753         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
7754         .spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
7755                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
7756         },
7757         /* class_tid: 12, wh_plus, table: ext_em_0 */
7758         {
7759         .description = "spare",
7760         .field_bit_size = 251,
7761         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7762         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7763         },
7764         {
7765         .description = "local_cos",
7766         .field_bit_size = 3,
7767         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7768         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7769         },
7770         {
7771         .description = "l4_dst_port",
7772         .field_bit_size = 16,
7773         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7774         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
7775         .spec_operand = {
7776                 (BNXT_ULP_HF12_IDX_O_UDP_DST_PORT >> 8) & 0xff,
7777                 BNXT_ULP_HF12_IDX_O_UDP_DST_PORT & 0xff,
7778                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
7779                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
7780         },
7781         {
7782         .description = "l4_src_port",
7783         .field_bit_size = 16,
7784         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7785         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
7786         .spec_operand = {
7787                 (BNXT_ULP_HF12_IDX_O_UDP_SRC_PORT >> 8) & 0xff,
7788                 BNXT_ULP_HF12_IDX_O_UDP_SRC_PORT & 0xff,
7789                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
7790                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
7791         },
7792         {
7793         .description = "ip_proto",
7794         .field_bit_size = 8,
7795         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7796         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
7797         .spec_operand = {
7798                 BNXT_ULP_SYM_IP_PROTO_UDP,
7799                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
7800                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
7801         },
7802         {
7803         .description = "ipv4_dst_addr",
7804         .field_bit_size = 32,
7805         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7806         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
7807         .spec_operand = {
7808                 (BNXT_ULP_HF12_IDX_O_IPV4_DST_ADDR >> 8) & 0xff,
7809                 BNXT_ULP_HF12_IDX_O_IPV4_DST_ADDR & 0xff,
7810                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
7811                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
7812         },
7813         {
7814         .description = "ipv4_src_addr",
7815         .field_bit_size = 32,
7816         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7817         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
7818         .spec_operand = {
7819                 (BNXT_ULP_HF12_IDX_O_IPV4_SRC_ADDR >> 8) & 0xff,
7820                 BNXT_ULP_HF12_IDX_O_IPV4_SRC_ADDR & 0xff,
7821                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
7822                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
7823         },
7824         {
7825         .description = "l2_src_mac",
7826         .field_bit_size = 48,
7827         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7828         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7829         },
7830         {
7831         .description = "tun_id",
7832         .field_bit_size = 24,
7833         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7834         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7835         },
7836         {
7837         .description = "l2_cntxt_id",
7838         .field_bit_size = 10,
7839         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7840         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
7841         .spec_operand = {
7842                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
7843                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
7844                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
7845                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
7846         },
7847         {
7848         .description = "em_profile_id",
7849         .field_bit_size = 8,
7850         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7851         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
7852         .spec_operand = {
7853                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
7854                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
7855                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
7856                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
7857         },
7858         /* class_tid: 12, wh_plus, table: int_em_0 */
7859         {
7860         .description = "spare",
7861         .field_bit_size = 3,
7862         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7863         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7864         },
7865         {
7866         .description = "local_cos",
7867         .field_bit_size = 3,
7868         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7869         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7870         },
7871         {
7872         .description = "l4_dst_port",
7873         .field_bit_size = 16,
7874         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7875         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
7876         .spec_operand = {
7877                 (BNXT_ULP_HF12_IDX_O_UDP_DST_PORT >> 8) & 0xff,
7878                 BNXT_ULP_HF12_IDX_O_UDP_DST_PORT & 0xff,
7879                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
7880                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
7881         },
7882         {
7883         .description = "l4_src_port",
7884         .field_bit_size = 16,
7885         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7886         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
7887         .spec_operand = {
7888                 (BNXT_ULP_HF12_IDX_O_UDP_SRC_PORT >> 8) & 0xff,
7889                 BNXT_ULP_HF12_IDX_O_UDP_SRC_PORT & 0xff,
7890                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
7891                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
7892         },
7893         {
7894         .description = "ip_proto",
7895         .field_bit_size = 8,
7896         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7897         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
7898         .spec_operand = {
7899                 BNXT_ULP_SYM_IP_PROTO_UDP,
7900                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
7901                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
7902         },
7903         {
7904         .description = "ipv4_dst_addr",
7905         .field_bit_size = 32,
7906         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7907         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
7908         .spec_operand = {
7909                 (BNXT_ULP_HF12_IDX_O_IPV4_DST_ADDR >> 8) & 0xff,
7910                 BNXT_ULP_HF12_IDX_O_IPV4_DST_ADDR & 0xff,
7911                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
7912                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
7913         },
7914         {
7915         .description = "ipv4_src_addr",
7916         .field_bit_size = 32,
7917         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7918         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
7919         .spec_operand = {
7920                 (BNXT_ULP_HF12_IDX_O_IPV4_SRC_ADDR >> 8) & 0xff,
7921                 BNXT_ULP_HF12_IDX_O_IPV4_SRC_ADDR & 0xff,
7922                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
7923                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
7924         },
7925         {
7926         .description = "l2_src_mac",
7927         .field_bit_size = 48,
7928         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7929         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7930         },
7931         {
7932         .description = "tun_id",
7933         .field_bit_size = 24,
7934         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7935         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7936         },
7937         {
7938         .description = "l2_cntxt_id",
7939         .field_bit_size = 10,
7940         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7941         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
7942         .spec_operand = {
7943                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
7944                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
7945                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
7946                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
7947         },
7948         {
7949         .description = "em_profile_id",
7950         .field_bit_size = 8,
7951         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7952         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
7953         .spec_operand = {
7954                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
7955                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
7956                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
7957                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
7958         },
7959         /* class_tid: 13, wh_plus, table: l2_cntxt_tcam_0 */
7960         {
7961         .description = "l2_ivlan_vid",
7962         .field_bit_size = 12,
7963         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
7964         .mask_operand = {
7965                 (BNXT_ULP_HF13_IDX_OO_VLAN_VID >> 8) & 0xff,
7966                 BNXT_ULP_HF13_IDX_OO_VLAN_VID & 0xff,
7967                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
7968                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
7969         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
7970         .spec_operand = {
7971                 (BNXT_ULP_HF13_IDX_OO_VLAN_VID >> 8) & 0xff,
7972                 BNXT_ULP_HF13_IDX_OO_VLAN_VID & 0xff,
7973                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
7974                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
7975         },
7976         {
7977         .description = "l2_ovlan_vid",
7978         .field_bit_size = 12,
7979         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7980         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7981         },
7982         {
7983         .description = "mac0_l2_addr",
7984         .field_bit_size = 48,
7985         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
7986         .mask_operand = {
7987                 (BNXT_ULP_HF13_IDX_O_ETH_DMAC >> 8) & 0xff,
7988                 BNXT_ULP_HF13_IDX_O_ETH_DMAC & 0xff,
7989                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
7990                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
7991         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
7992         .spec_operand = {
7993                 (BNXT_ULP_HF13_IDX_O_ETH_DMAC >> 8) & 0xff,
7994                 BNXT_ULP_HF13_IDX_O_ETH_DMAC & 0xff,
7995                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
7996                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
7997         },
7998         {
7999         .description = "svif",
8000         .field_bit_size = 8,
8001         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
8002         .mask_operand = {
8003                 (BNXT_ULP_HF13_IDX_SVIF_INDEX >> 8) & 0xff,
8004                 BNXT_ULP_HF13_IDX_SVIF_INDEX & 0xff,
8005                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
8006                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
8007         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
8008         .spec_operand = {
8009                 (BNXT_ULP_HF13_IDX_SVIF_INDEX >> 8) & 0xff,
8010                 BNXT_ULP_HF13_IDX_SVIF_INDEX & 0xff,
8011                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
8012                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
8013         },
8014         {
8015         .description = "sparif",
8016         .field_bit_size = 4,
8017         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8018         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8019         },
8020         {
8021         .description = "tl2_ivlan_vid",
8022         .field_bit_size = 12,
8023         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8024         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8025         },
8026         {
8027         .description = "tl2_ovlan_vid",
8028         .field_bit_size = 12,
8029         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8030         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8031         },
8032         {
8033         .description = "mac1_tl2_addr",
8034         .field_bit_size = 48,
8035         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8036         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8037         },
8038         {
8039         .description = "l2_num_vtags",
8040         .field_bit_size = 2,
8041         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
8042         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
8043                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
8044         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,
8045         .spec_operand = {
8046                 (BNXT_ULP_CF_IDX_O_VTAG_NUM >> 8) & 0xff,
8047                 BNXT_ULP_CF_IDX_O_VTAG_NUM & 0xff,
8048                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
8049                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
8050         },
8051         {
8052         .description = "tl2_num_vtags",
8053         .field_bit_size = 2,
8054         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8055         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8056         },
8057         {
8058         .description = "tun_hdr_type",
8059         .field_bit_size = 4,
8060         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8061         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8062         },
8063         {
8064         .description = "key_type",
8065         .field_bit_size = 2,
8066         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
8067         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
8068                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
8069         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8070         },
8071         {
8072         .description = "valid",
8073         .field_bit_size = 1,
8074         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
8075         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
8076                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
8077         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
8078         .spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
8079                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
8080         },
8081         /* class_tid: 13, wh_plus, table: profile_tcam_cache_0 */
8082         {
8083         .description = "recycle",
8084         .field_bit_size = 1,
8085         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8086         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8087         },
8088         {
8089         .description = "prof_func_id",
8090         .field_bit_size = 7,
8091         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8092         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
8093         .spec_operand = {
8094                 (BNXT_ULP_GLB_REGFILE_INDEX_L2_PROF_FUNC_ID >> 8) & 0xff,
8095                 BNXT_ULP_GLB_REGFILE_INDEX_L2_PROF_FUNC_ID & 0xff,
8096                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
8097                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
8098         },
8099         {
8100         .description = "class_tid",
8101         .field_bit_size = 8,
8102         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8103         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
8104         .spec_operand = {
8105                 (BNXT_ULP_REGFILE_INDEX_CLASS_TID >> 8) & 0xff,
8106                 BNXT_ULP_REGFILE_INDEX_CLASS_TID & 0xff,
8107                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
8108                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
8109         },
8110         /* class_tid: 13, wh_plus, table: profile_tcam_0 */
8111         {
8112         .description = "l4_hdr_is_udp_tcp",
8113         .field_bit_size = 1,
8114         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8115         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8116         },
8117         {
8118         .description = "l4_hdr_type",
8119         .field_bit_size = 4,
8120         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
8121         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
8122                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
8123         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8124         },
8125         {
8126         .description = "l4_hdr_error",
8127         .field_bit_size = 1,
8128         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
8129         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
8130                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
8131         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8132         },
8133         {
8134         .description = "l4_hdr_valid",
8135         .field_bit_size = 1,
8136         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
8137         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
8138                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
8139         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
8140         .spec_operand = {
8141                 BNXT_ULP_SYM_L4_HDR_VALID_YES,
8142                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
8143                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
8144         },
8145         {
8146         .description = "l3_ipv6_cmp_dst",
8147         .field_bit_size = 1,
8148         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8149         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8150         },
8151         {
8152         .description = "l3_ipv6_cmp_src",
8153         .field_bit_size = 1,
8154         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8155         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8156         },
8157         {
8158         .description = "l3_hdr_isIP",
8159         .field_bit_size = 1,
8160         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8161         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8162         },
8163         {
8164         .description = "l3_hdr_type",
8165         .field_bit_size = 4,
8166         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
8167         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
8168                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
8169         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8170         },
8171         {
8172         .description = "l3_hdr_error",
8173         .field_bit_size = 1,
8174         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
8175         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
8176                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
8177         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8178         },
8179         {
8180         .description = "l3_hdr_valid",
8181         .field_bit_size = 1,
8182         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
8183         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
8184                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
8185         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
8186         .spec_operand = {
8187                 BNXT_ULP_SYM_L3_HDR_VALID_YES,
8188                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
8189                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
8190         },
8191         {
8192         .description = "l2_two_vtags",
8193         .field_bit_size = 1,
8194         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8195         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8196         },
8197         {
8198         .description = "l2_vtag_present",
8199         .field_bit_size = 1,
8200         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8201         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8202         },
8203         {
8204         .description = "l2_uc_mc_bc",
8205         .field_bit_size = 2,
8206         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
8207         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
8208                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
8209         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8210         },
8211         {
8212         .description = "l2_hdr_type",
8213         .field_bit_size = 2,
8214         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
8215         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
8216                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
8217         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8218         },
8219         {
8220         .description = "l2_hdr_error",
8221         .field_bit_size = 1,
8222         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
8223         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
8224                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
8225         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8226         },
8227         {
8228         .description = "l2_hdr_valid",
8229         .field_bit_size = 1,
8230         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
8231         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
8232                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
8233         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
8234         .spec_operand = {
8235                 BNXT_ULP_SYM_L2_HDR_VALID_YES,
8236                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
8237                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
8238         },
8239         {
8240         .description = "tun_hdr_flags",
8241         .field_bit_size = 3,
8242         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8243         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8244         },
8245         {
8246         .description = "tun_hdr_type",
8247         .field_bit_size = 4,
8248         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8249         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8250         },
8251         {
8252         .description = "tun_hdr_error",
8253         .field_bit_size = 1,
8254         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8255         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8256         },
8257         {
8258         .description = "tun_hdr_valid",
8259         .field_bit_size = 1,
8260         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
8261         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
8262                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
8263         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8264         },
8265         {
8266         .description = "tl4_hdr_is_udp_tcp",
8267         .field_bit_size = 1,
8268         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8269         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8270         },
8271         {
8272         .description = "tl4_hdr_type",
8273         .field_bit_size = 4,
8274         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8275         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8276         },
8277         {
8278         .description = "tl4_hdr_error",
8279         .field_bit_size = 1,
8280         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8281         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8282         },
8283         {
8284         .description = "tl4_hdr_valid",
8285         .field_bit_size = 1,
8286         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
8287         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
8288                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
8289         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8290         },
8291         {
8292         .description = "tl3_ipv6_cmp_dst",
8293         .field_bit_size = 1,
8294         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8295         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8296         },
8297         {
8298         .description = "tl3_ipv6_cmp_src",
8299         .field_bit_size = 1,
8300         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8301         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8302         },
8303         {
8304         .description = "tl3_hdr_isIP",
8305         .field_bit_size = 1,
8306         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8307         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8308         },
8309         {
8310         .description = "tl3_hdr_type",
8311         .field_bit_size = 4,
8312         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8313         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8314         },
8315         {
8316         .description = "tl3_hdr_error",
8317         .field_bit_size = 1,
8318         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8319         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8320         },
8321         {
8322         .description = "tl3_hdr_valid",
8323         .field_bit_size = 1,
8324         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
8325         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
8326                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
8327         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8328         },
8329         {
8330         .description = "tl2_two_vtags",
8331         .field_bit_size = 1,
8332         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8333         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8334         },
8335         {
8336         .description = "tl2_vtag_present",
8337         .field_bit_size = 1,
8338         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8339         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8340         },
8341         {
8342         .description = "tl2_uc_mc_bc",
8343         .field_bit_size = 2,
8344         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8345         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8346         },
8347         {
8348         .description = "tl2_hdr_type",
8349         .field_bit_size = 2,
8350         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8351         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8352         },
8353         {
8354         .description = "tl2_hdr_valid",
8355         .field_bit_size = 1,
8356         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
8357         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
8358                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
8359         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8360         },
8361         {
8362         .description = "hrec_next",
8363         .field_bit_size = 1,
8364         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8365         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8366         },
8367         {
8368         .description = "reserved",
8369         .field_bit_size = 9,
8370         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8371         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8372         },
8373         {
8374         .description = "prof_func_id",
8375         .field_bit_size = 7,
8376         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
8377         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
8378                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
8379         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
8380         .spec_operand = {
8381                 (BNXT_ULP_GLB_REGFILE_INDEX_L2_PROF_FUNC_ID >> 8) & 0xff,
8382                 BNXT_ULP_GLB_REGFILE_INDEX_L2_PROF_FUNC_ID & 0xff,
8383                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
8384                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
8385         },
8386         {
8387         .description = "agg_error",
8388         .field_bit_size = 1,
8389         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8390         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8391         },
8392         {
8393         .description = "recycle_cnt",
8394         .field_bit_size = 2,
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 = "pkt_type_0",
8402         .field_bit_size = 2,
8403         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8404         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8405         },
8406         {
8407         .description = "pkt_type_1",
8408         .field_bit_size = 2,
8409         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
8410         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
8411                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
8412         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8413         },
8414         {
8415         .description = "valid",
8416         .field_bit_size = 1,
8417         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
8418         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
8419                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
8420         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
8421         .spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
8422                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
8423         },
8424         /* class_tid: 13, wh_plus, table: ext_em_0 */
8425         {
8426         .description = "spare",
8427         .field_bit_size = 251,
8428         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8429         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8430         },
8431         {
8432         .description = "local_cos",
8433         .field_bit_size = 3,
8434         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8435         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8436         },
8437         {
8438         .description = "l4_dst_port",
8439         .field_bit_size = 16,
8440         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8441         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
8442         .spec_operand = {
8443                 (BNXT_ULP_HF13_IDX_O_TCP_DST_PORT >> 8) & 0xff,
8444                 BNXT_ULP_HF13_IDX_O_TCP_DST_PORT & 0xff,
8445                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
8446                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
8447         },
8448         {
8449         .description = "l4_src_port",
8450         .field_bit_size = 16,
8451         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8452         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
8453         .spec_operand = {
8454                 (BNXT_ULP_HF13_IDX_O_TCP_SRC_PORT >> 8) & 0xff,
8455                 BNXT_ULP_HF13_IDX_O_TCP_SRC_PORT & 0xff,
8456                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
8457                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
8458         },
8459         {
8460         .description = "ip_proto",
8461         .field_bit_size = 8,
8462         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8463         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
8464         .spec_operand = {
8465                 BNXT_ULP_SYM_IP_PROTO_TCP,
8466                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
8467                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
8468         },
8469         {
8470         .description = "ipv4_dst_addr",
8471         .field_bit_size = 32,
8472         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8473         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
8474         .spec_operand = {
8475                 (BNXT_ULP_HF13_IDX_O_IPV4_DST_ADDR >> 8) & 0xff,
8476                 BNXT_ULP_HF13_IDX_O_IPV4_DST_ADDR & 0xff,
8477                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
8478                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
8479         },
8480         {
8481         .description = "ipv4_src_addr",
8482         .field_bit_size = 32,
8483         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8484         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
8485         .spec_operand = {
8486                 (BNXT_ULP_HF13_IDX_O_IPV4_SRC_ADDR >> 8) & 0xff,
8487                 BNXT_ULP_HF13_IDX_O_IPV4_SRC_ADDR & 0xff,
8488                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
8489                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
8490         },
8491         {
8492         .description = "l2_src_mac",
8493         .field_bit_size = 48,
8494         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8495         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8496         },
8497         {
8498         .description = "tun_id",
8499         .field_bit_size = 24,
8500         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8501         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8502         },
8503         {
8504         .description = "l2_cntxt_id",
8505         .field_bit_size = 10,
8506         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8507         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
8508         .spec_operand = {
8509                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
8510                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
8511                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
8512                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
8513         },
8514         {
8515         .description = "em_profile_id",
8516         .field_bit_size = 8,
8517         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8518         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
8519         .spec_operand = {
8520                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
8521                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
8522                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
8523                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
8524         },
8525         /* class_tid: 13, wh_plus, table: int_em_0 */
8526         {
8527         .description = "spare",
8528         .field_bit_size = 3,
8529         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8530         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8531         },
8532         {
8533         .description = "local_cos",
8534         .field_bit_size = 3,
8535         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8536         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8537         },
8538         {
8539         .description = "l4_dst_port",
8540         .field_bit_size = 16,
8541         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8542         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
8543         .spec_operand = {
8544                 (BNXT_ULP_HF13_IDX_O_TCP_DST_PORT >> 8) & 0xff,
8545                 BNXT_ULP_HF13_IDX_O_TCP_DST_PORT & 0xff,
8546                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
8547                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
8548         },
8549         {
8550         .description = "l4_src_port",
8551         .field_bit_size = 16,
8552         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8553         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
8554         .spec_operand = {
8555                 (BNXT_ULP_HF13_IDX_O_TCP_SRC_PORT >> 8) & 0xff,
8556                 BNXT_ULP_HF13_IDX_O_TCP_SRC_PORT & 0xff,
8557                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
8558                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
8559         },
8560         {
8561         .description = "ip_proto",
8562         .field_bit_size = 8,
8563         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8564         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
8565         .spec_operand = {
8566                 BNXT_ULP_SYM_IP_PROTO_TCP,
8567                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
8568                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
8569         },
8570         {
8571         .description = "ipv4_dst_addr",
8572         .field_bit_size = 32,
8573         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8574         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
8575         .spec_operand = {
8576                 (BNXT_ULP_HF13_IDX_O_IPV4_DST_ADDR >> 8) & 0xff,
8577                 BNXT_ULP_HF13_IDX_O_IPV4_DST_ADDR & 0xff,
8578                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
8579                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
8580         },
8581         {
8582         .description = "ipv4_src_addr",
8583         .field_bit_size = 32,
8584         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8585         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
8586         .spec_operand = {
8587                 (BNXT_ULP_HF13_IDX_O_IPV4_SRC_ADDR >> 8) & 0xff,
8588                 BNXT_ULP_HF13_IDX_O_IPV4_SRC_ADDR & 0xff,
8589                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
8590                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
8591         },
8592         {
8593         .description = "l2_src_mac",
8594         .field_bit_size = 48,
8595         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8596         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8597         },
8598         {
8599         .description = "tun_id",
8600         .field_bit_size = 24,
8601         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8602         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8603         },
8604         {
8605         .description = "l2_cntxt_id",
8606         .field_bit_size = 10,
8607         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8608         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
8609         .spec_operand = {
8610                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
8611                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
8612                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
8613                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
8614         },
8615         {
8616         .description = "em_profile_id",
8617         .field_bit_size = 8,
8618         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8619         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
8620         .spec_operand = {
8621                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
8622                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
8623                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
8624                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
8625         },
8626         /* class_tid: 14, wh_plus, table: l2_cntxt_tcam_0 */
8627         {
8628         .description = "l2_ivlan_vid",
8629         .field_bit_size = 12,
8630         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
8631         .mask_operand = {
8632                 (BNXT_ULP_HF14_IDX_OO_VLAN_VID >> 8) & 0xff,
8633                 BNXT_ULP_HF14_IDX_OO_VLAN_VID & 0xff,
8634                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
8635                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
8636         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
8637         .spec_operand = {
8638                 (BNXT_ULP_HF14_IDX_OO_VLAN_VID >> 8) & 0xff,
8639                 BNXT_ULP_HF14_IDX_OO_VLAN_VID & 0xff,
8640                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
8641                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
8642         },
8643         {
8644         .description = "l2_ovlan_vid",
8645         .field_bit_size = 12,
8646         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8647         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8648         },
8649         {
8650         .description = "mac0_l2_addr",
8651         .field_bit_size = 48,
8652         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
8653         .mask_operand = {
8654                 (BNXT_ULP_HF14_IDX_O_ETH_DMAC >> 8) & 0xff,
8655                 BNXT_ULP_HF14_IDX_O_ETH_DMAC & 0xff,
8656                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
8657                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
8658         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
8659         .spec_operand = {
8660                 (BNXT_ULP_HF14_IDX_O_ETH_DMAC >> 8) & 0xff,
8661                 BNXT_ULP_HF14_IDX_O_ETH_DMAC & 0xff,
8662                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
8663                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
8664         },
8665         {
8666         .description = "svif",
8667         .field_bit_size = 8,
8668         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
8669         .mask_operand = {
8670                 (BNXT_ULP_HF14_IDX_SVIF_INDEX >> 8) & 0xff,
8671                 BNXT_ULP_HF14_IDX_SVIF_INDEX & 0xff,
8672                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
8673                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
8674         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
8675         .spec_operand = {
8676                 (BNXT_ULP_HF14_IDX_SVIF_INDEX >> 8) & 0xff,
8677                 BNXT_ULP_HF14_IDX_SVIF_INDEX & 0xff,
8678                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
8679                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
8680         },
8681         {
8682         .description = "sparif",
8683         .field_bit_size = 4,
8684         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8685         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8686         },
8687         {
8688         .description = "tl2_ivlan_vid",
8689         .field_bit_size = 12,
8690         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8691         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8692         },
8693         {
8694         .description = "tl2_ovlan_vid",
8695         .field_bit_size = 12,
8696         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8697         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8698         },
8699         {
8700         .description = "mac1_tl2_addr",
8701         .field_bit_size = 48,
8702         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8703         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8704         },
8705         {
8706         .description = "l2_num_vtags",
8707         .field_bit_size = 2,
8708         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
8709         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
8710                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
8711         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,
8712         .spec_operand = {
8713                 (BNXT_ULP_CF_IDX_O_VTAG_NUM >> 8) & 0xff,
8714                 BNXT_ULP_CF_IDX_O_VTAG_NUM & 0xff,
8715                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
8716                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
8717         },
8718         {
8719         .description = "tl2_num_vtags",
8720         .field_bit_size = 2,
8721         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8722         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8723         },
8724         {
8725         .description = "tun_hdr_type",
8726         .field_bit_size = 4,
8727         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8728         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8729         },
8730         {
8731         .description = "key_type",
8732         .field_bit_size = 2,
8733         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
8734         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
8735                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
8736         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8737         },
8738         {
8739         .description = "valid",
8740         .field_bit_size = 1,
8741         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
8742         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
8743                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
8744         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
8745         .spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
8746                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
8747         },
8748         /* class_tid: 14, wh_plus, table: profile_tcam_cache_0 */
8749         {
8750         .description = "recycle",
8751         .field_bit_size = 1,
8752         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8753         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8754         },
8755         {
8756         .description = "prof_func_id",
8757         .field_bit_size = 7,
8758         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8759         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
8760         .spec_operand = {
8761                 (BNXT_ULP_GLB_REGFILE_INDEX_L2_PROF_FUNC_ID >> 8) & 0xff,
8762                 BNXT_ULP_GLB_REGFILE_INDEX_L2_PROF_FUNC_ID & 0xff,
8763                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
8764                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
8765         },
8766         {
8767         .description = "class_tid",
8768         .field_bit_size = 8,
8769         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8770         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
8771         .spec_operand = {
8772                 (BNXT_ULP_REGFILE_INDEX_CLASS_TID >> 8) & 0xff,
8773                 BNXT_ULP_REGFILE_INDEX_CLASS_TID & 0xff,
8774                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
8775                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
8776         },
8777         /* class_tid: 14, wh_plus, table: profile_tcam_0 */
8778         {
8779         .description = "l4_hdr_is_udp_tcp",
8780         .field_bit_size = 1,
8781         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8782         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8783         },
8784         {
8785         .description = "l4_hdr_type",
8786         .field_bit_size = 4,
8787         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
8788         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
8789                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
8790         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
8791         .spec_operand = {
8792                 BNXT_ULP_SYM_L4_HDR_TYPE_UDP,
8793                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
8794                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
8795         },
8796         {
8797         .description = "l4_hdr_error",
8798         .field_bit_size = 1,
8799         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
8800         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
8801                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
8802         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8803         },
8804         {
8805         .description = "l4_hdr_valid",
8806         .field_bit_size = 1,
8807         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
8808         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
8809                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
8810         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
8811         .spec_operand = {
8812                 BNXT_ULP_SYM_L4_HDR_VALID_YES,
8813                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
8814                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
8815         },
8816         {
8817         .description = "l3_ipv6_cmp_dst",
8818         .field_bit_size = 1,
8819         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8820         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8821         },
8822         {
8823         .description = "l3_ipv6_cmp_src",
8824         .field_bit_size = 1,
8825         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8826         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8827         },
8828         {
8829         .description = "l3_hdr_isIP",
8830         .field_bit_size = 1,
8831         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8832         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8833         },
8834         {
8835         .description = "l3_hdr_type",
8836         .field_bit_size = 4,
8837         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
8838         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
8839                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
8840         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
8841         .spec_operand = {
8842                 BNXT_ULP_SYM_L3_HDR_TYPE_IPV6,
8843                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
8844                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
8845         },
8846         {
8847         .description = "l3_hdr_error",
8848         .field_bit_size = 1,
8849         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
8850         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
8851                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
8852         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8853         },
8854         {
8855         .description = "l3_hdr_valid",
8856         .field_bit_size = 1,
8857         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
8858         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
8859                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
8860         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
8861         .spec_operand = {
8862                 BNXT_ULP_SYM_L3_HDR_VALID_YES,
8863                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
8864                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
8865         },
8866         {
8867         .description = "l2_two_vtags",
8868         .field_bit_size = 1,
8869         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8870         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8871         },
8872         {
8873         .description = "l2_vtag_present",
8874         .field_bit_size = 1,
8875         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8876         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8877         },
8878         {
8879         .description = "l2_uc_mc_bc",
8880         .field_bit_size = 2,
8881         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
8882         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
8883                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
8884         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8885         },
8886         {
8887         .description = "l2_hdr_type",
8888         .field_bit_size = 2,
8889         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
8890         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
8891                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
8892         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8893         },
8894         {
8895         .description = "l2_hdr_error",
8896         .field_bit_size = 1,
8897         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
8898         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
8899                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
8900         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8901         },
8902         {
8903         .description = "l2_hdr_valid",
8904         .field_bit_size = 1,
8905         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
8906         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
8907                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
8908         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
8909         .spec_operand = {
8910                 BNXT_ULP_SYM_L2_HDR_VALID_YES,
8911                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
8912                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
8913         },
8914         {
8915         .description = "tun_hdr_flags",
8916         .field_bit_size = 3,
8917         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8918         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8919         },
8920         {
8921         .description = "tun_hdr_type",
8922         .field_bit_size = 4,
8923         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8924         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8925         },
8926         {
8927         .description = "tun_hdr_error",
8928         .field_bit_size = 1,
8929         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8930         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8931         },
8932         {
8933         .description = "tun_hdr_valid",
8934         .field_bit_size = 1,
8935         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
8936         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
8937                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
8938         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8939         },
8940         {
8941         .description = "tl4_hdr_is_udp_tcp",
8942         .field_bit_size = 1,
8943         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8944         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8945         },
8946         {
8947         .description = "tl4_hdr_type",
8948         .field_bit_size = 4,
8949         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8950         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8951         },
8952         {
8953         .description = "tl4_hdr_error",
8954         .field_bit_size = 1,
8955         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8956         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8957         },
8958         {
8959         .description = "tl4_hdr_valid",
8960         .field_bit_size = 1,
8961         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
8962         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
8963                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
8964         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8965         },
8966         {
8967         .description = "tl3_ipv6_cmp_dst",
8968         .field_bit_size = 1,
8969         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8970         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8971         },
8972         {
8973         .description = "tl3_ipv6_cmp_src",
8974         .field_bit_size = 1,
8975         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8976         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8977         },
8978         {
8979         .description = "tl3_hdr_isIP",
8980         .field_bit_size = 1,
8981         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8982         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8983         },
8984         {
8985         .description = "tl3_hdr_type",
8986         .field_bit_size = 4,
8987         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8988         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8989         },
8990         {
8991         .description = "tl3_hdr_error",
8992         .field_bit_size = 1,
8993         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8994         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8995         },
8996         {
8997         .description = "tl3_hdr_valid",
8998         .field_bit_size = 1,
8999         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
9000         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
9001                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
9002         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9003         },
9004         {
9005         .description = "tl2_two_vtags",
9006         .field_bit_size = 1,
9007         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9008         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9009         },
9010         {
9011         .description = "tl2_vtag_present",
9012         .field_bit_size = 1,
9013         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9014         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9015         },
9016         {
9017         .description = "tl2_uc_mc_bc",
9018         .field_bit_size = 2,
9019         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9020         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9021         },
9022         {
9023         .description = "tl2_hdr_type",
9024         .field_bit_size = 2,
9025         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9026         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9027         },
9028         {
9029         .description = "tl2_hdr_valid",
9030         .field_bit_size = 1,
9031         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
9032         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
9033                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
9034         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9035         },
9036         {
9037         .description = "hrec_next",
9038         .field_bit_size = 1,
9039         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9040         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9041         },
9042         {
9043         .description = "reserved",
9044         .field_bit_size = 9,
9045         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9046         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9047         },
9048         {
9049         .description = "prof_func_id",
9050         .field_bit_size = 7,
9051         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
9052         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
9053                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
9054         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
9055         .spec_operand = {
9056                 (BNXT_ULP_GLB_REGFILE_INDEX_L2_PROF_FUNC_ID >> 8) & 0xff,
9057                 BNXT_ULP_GLB_REGFILE_INDEX_L2_PROF_FUNC_ID & 0xff,
9058                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
9059                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
9060         },
9061         {
9062         .description = "agg_error",
9063         .field_bit_size = 1,
9064         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9065         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9066         },
9067         {
9068         .description = "recycle_cnt",
9069         .field_bit_size = 2,
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 = "pkt_type_0",
9077         .field_bit_size = 2,
9078         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9079         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9080         },
9081         {
9082         .description = "pkt_type_1",
9083         .field_bit_size = 2,
9084         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
9085         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
9086                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
9087         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9088         },
9089         {
9090         .description = "valid",
9091         .field_bit_size = 1,
9092         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
9093         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
9094                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
9095         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
9096         .spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
9097                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
9098         },
9099         /* class_tid: 14, wh_plus, table: ext_em_0 */
9100         {
9101         .description = "spare",
9102         .field_bit_size = 59,
9103         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9104         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9105         },
9106         {
9107         .description = "local_cos",
9108         .field_bit_size = 3,
9109         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9110         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9111         },
9112         {
9113         .description = "l4_dst_port",
9114         .field_bit_size = 16,
9115         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9116         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
9117         .spec_operand = {
9118                 (BNXT_ULP_HF14_IDX_O_UDP_DST_PORT >> 8) & 0xff,
9119                 BNXT_ULP_HF14_IDX_O_UDP_DST_PORT & 0xff,
9120                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
9121                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
9122         },
9123         {
9124         .description = "l4_src_port",
9125         .field_bit_size = 16,
9126         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9127         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
9128         .spec_operand = {
9129                 (BNXT_ULP_HF14_IDX_O_UDP_SRC_PORT >> 8) & 0xff,
9130                 BNXT_ULP_HF14_IDX_O_UDP_SRC_PORT & 0xff,
9131                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
9132                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
9133         },
9134         {
9135         .description = "ip_proto",
9136         .field_bit_size = 8,
9137         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9138         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
9139         .spec_operand = {
9140                 BNXT_ULP_SYM_IP_PROTO_UDP,
9141                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
9142                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
9143         },
9144         {
9145         .description = "ipv6_dst_addr",
9146         .field_bit_size = 128,
9147         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9148         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
9149         .spec_operand = {
9150                 (BNXT_ULP_HF14_IDX_O_IPV6_DST_ADDR >> 8) & 0xff,
9151                 BNXT_ULP_HF14_IDX_O_IPV6_DST_ADDR & 0xff,
9152                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
9153                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
9154         },
9155         {
9156         .description = "ipv6_src_addr",
9157         .field_bit_size = 128,
9158         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9159         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
9160         .spec_operand = {
9161                 (BNXT_ULP_HF14_IDX_O_IPV6_SRC_ADDR >> 8) & 0xff,
9162                 BNXT_ULP_HF14_IDX_O_IPV6_SRC_ADDR & 0xff,
9163                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
9164                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
9165         },
9166         {
9167         .description = "l2_src_mac",
9168         .field_bit_size = 48,
9169         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9170         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9171         },
9172         {
9173         .description = "tun_id",
9174         .field_bit_size = 24,
9175         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9176         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9177         },
9178         {
9179         .description = "l2_cntxt_id",
9180         .field_bit_size = 10,
9181         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9182         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
9183         .spec_operand = {
9184                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
9185                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
9186                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
9187                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
9188         },
9189         {
9190         .description = "em_profile_id",
9191         .field_bit_size = 8,
9192         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9193         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
9194         .spec_operand = {
9195                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
9196                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
9197                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
9198                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
9199         },
9200         /* class_tid: 14, wh_plus, table: int_em_0 */
9201         {
9202         .description = "spare",
9203         .field_bit_size = 3,
9204         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9205         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9206         },
9207         {
9208         .description = "local_cos",
9209         .field_bit_size = 3,
9210         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9211         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9212         },
9213         {
9214         .description = "l4_dst_port",
9215         .field_bit_size = 16,
9216         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9217         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
9218         .spec_operand = {
9219                 (BNXT_ULP_HF14_IDX_O_UDP_DST_PORT >> 8) & 0xff,
9220                 BNXT_ULP_HF14_IDX_O_UDP_DST_PORT & 0xff,
9221                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
9222                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
9223         },
9224         {
9225         .description = "l4_src_port",
9226         .field_bit_size = 16,
9227         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9228         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
9229         .spec_operand = {
9230                 (BNXT_ULP_HF14_IDX_O_UDP_SRC_PORT >> 8) & 0xff,
9231                 BNXT_ULP_HF14_IDX_O_UDP_SRC_PORT & 0xff,
9232                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
9233                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
9234         },
9235         {
9236         .description = "ip_proto",
9237         .field_bit_size = 8,
9238         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9239         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
9240         .spec_operand = {
9241                 BNXT_ULP_SYM_IP_PROTO_UDP,
9242                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
9243                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
9244         },
9245         {
9246         .description = "ipv6_dst_addr",
9247         .field_bit_size = 128,
9248         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9249         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
9250         .spec_operand = {
9251                 (BNXT_ULP_HF14_IDX_O_IPV6_DST_ADDR >> 8) & 0xff,
9252                 BNXT_ULP_HF14_IDX_O_IPV6_DST_ADDR & 0xff,
9253                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
9254                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
9255         },
9256         {
9257         .description = "ipv6_src_addr",
9258         .field_bit_size = 128,
9259         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9260         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
9261         .spec_operand = {
9262                 (BNXT_ULP_HF14_IDX_O_IPV6_SRC_ADDR >> 8) & 0xff,
9263                 BNXT_ULP_HF14_IDX_O_IPV6_SRC_ADDR & 0xff,
9264                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
9265                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
9266         },
9267         {
9268         .description = "l2_src_mac",
9269         .field_bit_size = 48,
9270         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9271         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9272         },
9273         {
9274         .description = "tun_id",
9275         .field_bit_size = 24,
9276         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9277         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9278         },
9279         {
9280         .description = "l2_cntxt_id",
9281         .field_bit_size = 10,
9282         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9283         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
9284         .spec_operand = {
9285                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
9286                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
9287                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
9288                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
9289         },
9290         {
9291         .description = "em_profile_id",
9292         .field_bit_size = 8,
9293         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9294         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
9295         .spec_operand = {
9296                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
9297                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
9298                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
9299                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
9300         },
9301         /* class_tid: 15, wh_plus, table: l2_cntxt_tcam_0 */
9302         {
9303         .description = "l2_ivlan_vid",
9304         .field_bit_size = 12,
9305         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
9306         .mask_operand = {
9307                 (BNXT_ULP_HF15_IDX_OO_VLAN_VID >> 8) & 0xff,
9308                 BNXT_ULP_HF15_IDX_OO_VLAN_VID & 0xff,
9309                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
9310                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
9311         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
9312         .spec_operand = {
9313                 (BNXT_ULP_HF15_IDX_OO_VLAN_VID >> 8) & 0xff,
9314                 BNXT_ULP_HF15_IDX_OO_VLAN_VID & 0xff,
9315                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
9316                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
9317         },
9318         {
9319         .description = "l2_ovlan_vid",
9320         .field_bit_size = 12,
9321         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9322         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9323         },
9324         {
9325         .description = "mac0_l2_addr",
9326         .field_bit_size = 48,
9327         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
9328         .mask_operand = {
9329                 (BNXT_ULP_HF15_IDX_O_ETH_DMAC >> 8) & 0xff,
9330                 BNXT_ULP_HF15_IDX_O_ETH_DMAC & 0xff,
9331                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
9332                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
9333         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
9334         .spec_operand = {
9335                 (BNXT_ULP_HF15_IDX_O_ETH_DMAC >> 8) & 0xff,
9336                 BNXT_ULP_HF15_IDX_O_ETH_DMAC & 0xff,
9337                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
9338                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
9339         },
9340         {
9341         .description = "svif",
9342         .field_bit_size = 8,
9343         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
9344         .mask_operand = {
9345                 (BNXT_ULP_HF15_IDX_SVIF_INDEX >> 8) & 0xff,
9346                 BNXT_ULP_HF15_IDX_SVIF_INDEX & 0xff,
9347                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
9348                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
9349         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
9350         .spec_operand = {
9351                 (BNXT_ULP_HF15_IDX_SVIF_INDEX >> 8) & 0xff,
9352                 BNXT_ULP_HF15_IDX_SVIF_INDEX & 0xff,
9353                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
9354                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
9355         },
9356         {
9357         .description = "sparif",
9358         .field_bit_size = 4,
9359         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9360         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9361         },
9362         {
9363         .description = "tl2_ivlan_vid",
9364         .field_bit_size = 12,
9365         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9366         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9367         },
9368         {
9369         .description = "tl2_ovlan_vid",
9370         .field_bit_size = 12,
9371         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9372         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9373         },
9374         {
9375         .description = "mac1_tl2_addr",
9376         .field_bit_size = 48,
9377         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9378         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9379         },
9380         {
9381         .description = "l2_num_vtags",
9382         .field_bit_size = 2,
9383         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
9384         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
9385                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
9386         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,
9387         .spec_operand = {
9388                 (BNXT_ULP_CF_IDX_O_VTAG_NUM >> 8) & 0xff,
9389                 BNXT_ULP_CF_IDX_O_VTAG_NUM & 0xff,
9390                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
9391                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
9392         },
9393         {
9394         .description = "tl2_num_vtags",
9395         .field_bit_size = 2,
9396         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9397         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9398         },
9399         {
9400         .description = "tun_hdr_type",
9401         .field_bit_size = 4,
9402         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9403         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9404         },
9405         {
9406         .description = "key_type",
9407         .field_bit_size = 2,
9408         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
9409         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
9410                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
9411         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9412         },
9413         {
9414         .description = "valid",
9415         .field_bit_size = 1,
9416         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
9417         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
9418                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
9419         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
9420         .spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
9421                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
9422         },
9423         /* class_tid: 15, wh_plus, table: profile_tcam_cache_0 */
9424         {
9425         .description = "recycle",
9426         .field_bit_size = 1,
9427         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9428         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9429         },
9430         {
9431         .description = "prof_func_id",
9432         .field_bit_size = 7,
9433         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9434         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
9435         .spec_operand = {
9436                 (BNXT_ULP_GLB_REGFILE_INDEX_L2_PROF_FUNC_ID >> 8) & 0xff,
9437                 BNXT_ULP_GLB_REGFILE_INDEX_L2_PROF_FUNC_ID & 0xff,
9438                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
9439                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
9440         },
9441         {
9442         .description = "class_tid",
9443         .field_bit_size = 8,
9444         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9445         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
9446         .spec_operand = {
9447                 (BNXT_ULP_REGFILE_INDEX_CLASS_TID >> 8) & 0xff,
9448                 BNXT_ULP_REGFILE_INDEX_CLASS_TID & 0xff,
9449                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
9450                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
9451         },
9452         /* class_tid: 15, wh_plus, table: profile_tcam_0 */
9453         {
9454         .description = "l4_hdr_is_udp_tcp",
9455         .field_bit_size = 1,
9456         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9457         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9458         },
9459         {
9460         .description = "l4_hdr_type",
9461         .field_bit_size = 4,
9462         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
9463         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
9464                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
9465         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9466         },
9467         {
9468         .description = "l4_hdr_error",
9469         .field_bit_size = 1,
9470         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
9471         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
9472                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
9473         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9474         },
9475         {
9476         .description = "l4_hdr_valid",
9477         .field_bit_size = 1,
9478         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
9479         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
9480                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
9481         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
9482         .spec_operand = {
9483                 BNXT_ULP_SYM_L4_HDR_VALID_YES,
9484                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
9485                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
9486         },
9487         {
9488         .description = "l3_ipv6_cmp_dst",
9489         .field_bit_size = 1,
9490         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9491         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9492         },
9493         {
9494         .description = "l3_ipv6_cmp_src",
9495         .field_bit_size = 1,
9496         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9497         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9498         },
9499         {
9500         .description = "l3_hdr_isIP",
9501         .field_bit_size = 1,
9502         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9503         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9504         },
9505         {
9506         .description = "l3_hdr_type",
9507         .field_bit_size = 4,
9508         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
9509         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
9510                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
9511         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
9512         .spec_operand = {
9513                 BNXT_ULP_SYM_L3_HDR_TYPE_IPV6,
9514                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
9515                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
9516         },
9517         {
9518         .description = "l3_hdr_error",
9519         .field_bit_size = 1,
9520         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
9521         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
9522                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
9523         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9524         },
9525         {
9526         .description = "l3_hdr_valid",
9527         .field_bit_size = 1,
9528         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
9529         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
9530                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
9531         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
9532         .spec_operand = {
9533                 BNXT_ULP_SYM_L3_HDR_VALID_YES,
9534                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
9535                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
9536         },
9537         {
9538         .description = "l2_two_vtags",
9539         .field_bit_size = 1,
9540         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9541         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9542         },
9543         {
9544         .description = "l2_vtag_present",
9545         .field_bit_size = 1,
9546         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9547         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9548         },
9549         {
9550         .description = "l2_uc_mc_bc",
9551         .field_bit_size = 2,
9552         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
9553         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
9554                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
9555         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9556         },
9557         {
9558         .description = "l2_hdr_type",
9559         .field_bit_size = 2,
9560         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
9561         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
9562                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
9563         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9564         },
9565         {
9566         .description = "l2_hdr_error",
9567         .field_bit_size = 1,
9568         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
9569         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
9570                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
9571         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9572         },
9573         {
9574         .description = "l2_hdr_valid",
9575         .field_bit_size = 1,
9576         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
9577         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
9578                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
9579         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
9580         .spec_operand = {
9581                 BNXT_ULP_SYM_L2_HDR_VALID_YES,
9582                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
9583                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
9584         },
9585         {
9586         .description = "tun_hdr_flags",
9587         .field_bit_size = 3,
9588         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9589         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9590         },
9591         {
9592         .description = "tun_hdr_type",
9593         .field_bit_size = 4,
9594         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9595         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9596         },
9597         {
9598         .description = "tun_hdr_error",
9599         .field_bit_size = 1,
9600         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9601         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9602         },
9603         {
9604         .description = "tun_hdr_valid",
9605         .field_bit_size = 1,
9606         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
9607         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
9608                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
9609         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9610         },
9611         {
9612         .description = "tl4_hdr_is_udp_tcp",
9613         .field_bit_size = 1,
9614         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9615         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9616         },
9617         {
9618         .description = "tl4_hdr_type",
9619         .field_bit_size = 4,
9620         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9621         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9622         },
9623         {
9624         .description = "tl4_hdr_error",
9625         .field_bit_size = 1,
9626         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9627         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9628         },
9629         {
9630         .description = "tl4_hdr_valid",
9631         .field_bit_size = 1,
9632         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
9633         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
9634                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
9635         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9636         },
9637         {
9638         .description = "tl3_ipv6_cmp_dst",
9639         .field_bit_size = 1,
9640         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9641         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9642         },
9643         {
9644         .description = "tl3_ipv6_cmp_src",
9645         .field_bit_size = 1,
9646         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9647         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9648         },
9649         {
9650         .description = "tl3_hdr_isIP",
9651         .field_bit_size = 1,
9652         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9653         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9654         },
9655         {
9656         .description = "tl3_hdr_type",
9657         .field_bit_size = 4,
9658         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9659         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9660         },
9661         {
9662         .description = "tl3_hdr_error",
9663         .field_bit_size = 1,
9664         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9665         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9666         },
9667         {
9668         .description = "tl3_hdr_valid",
9669         .field_bit_size = 1,
9670         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
9671         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
9672                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
9673         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9674         },
9675         {
9676         .description = "tl2_two_vtags",
9677         .field_bit_size = 1,
9678         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9679         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9680         },
9681         {
9682         .description = "tl2_vtag_present",
9683         .field_bit_size = 1,
9684         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9685         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9686         },
9687         {
9688         .description = "tl2_uc_mc_bc",
9689         .field_bit_size = 2,
9690         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9691         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9692         },
9693         {
9694         .description = "tl2_hdr_type",
9695         .field_bit_size = 2,
9696         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9697         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9698         },
9699         {
9700         .description = "tl2_hdr_valid",
9701         .field_bit_size = 1,
9702         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
9703         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
9704                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
9705         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9706         },
9707         {
9708         .description = "hrec_next",
9709         .field_bit_size = 1,
9710         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9711         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9712         },
9713         {
9714         .description = "reserved",
9715         .field_bit_size = 9,
9716         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9717         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9718         },
9719         {
9720         .description = "prof_func_id",
9721         .field_bit_size = 7,
9722         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
9723         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
9724                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
9725         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
9726         .spec_operand = {
9727                 (BNXT_ULP_GLB_REGFILE_INDEX_L2_PROF_FUNC_ID >> 8) & 0xff,
9728                 BNXT_ULP_GLB_REGFILE_INDEX_L2_PROF_FUNC_ID & 0xff,
9729                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
9730                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
9731         },
9732         {
9733         .description = "agg_error",
9734         .field_bit_size = 1,
9735         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9736         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9737         },
9738         {
9739         .description = "recycle_cnt",
9740         .field_bit_size = 2,
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 = "pkt_type_0",
9748         .field_bit_size = 2,
9749         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9750         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9751         },
9752         {
9753         .description = "pkt_type_1",
9754         .field_bit_size = 2,
9755         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
9756         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
9757                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
9758         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9759         },
9760         {
9761         .description = "valid",
9762         .field_bit_size = 1,
9763         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
9764         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
9765                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
9766         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
9767         .spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
9768                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
9769         },
9770         /* class_tid: 15, wh_plus, table: ext_em_0 */
9771         {
9772         .description = "spare",
9773         .field_bit_size = 59,
9774         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9775         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9776         },
9777         {
9778         .description = "local_cos",
9779         .field_bit_size = 3,
9780         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9781         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9782         },
9783         {
9784         .description = "l4_dst_port",
9785         .field_bit_size = 16,
9786         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9787         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
9788         .spec_operand = {
9789                 (BNXT_ULP_HF15_IDX_O_TCP_DST_PORT >> 8) & 0xff,
9790                 BNXT_ULP_HF15_IDX_O_TCP_DST_PORT & 0xff,
9791                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
9792                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
9793         },
9794         {
9795         .description = "l4_src_port",
9796         .field_bit_size = 16,
9797         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9798         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
9799         .spec_operand = {
9800                 (BNXT_ULP_HF15_IDX_O_TCP_SRC_PORT >> 8) & 0xff,
9801                 BNXT_ULP_HF15_IDX_O_TCP_SRC_PORT & 0xff,
9802                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
9803                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
9804         },
9805         {
9806         .description = "ip_proto",
9807         .field_bit_size = 8,
9808         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9809         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
9810         .spec_operand = {
9811                 BNXT_ULP_SYM_IP_PROTO_TCP,
9812                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
9813                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
9814         },
9815         {
9816         .description = "ipv6_dst_addr",
9817         .field_bit_size = 128,
9818         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9819         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
9820         .spec_operand = {
9821                 (BNXT_ULP_HF15_IDX_O_IPV6_DST_ADDR >> 8) & 0xff,
9822                 BNXT_ULP_HF15_IDX_O_IPV6_DST_ADDR & 0xff,
9823                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
9824                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
9825         },
9826         {
9827         .description = "ipv6_src_addr",
9828         .field_bit_size = 128,
9829         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9830         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
9831         .spec_operand = {
9832                 (BNXT_ULP_HF15_IDX_O_IPV6_SRC_ADDR >> 8) & 0xff,
9833                 BNXT_ULP_HF15_IDX_O_IPV6_SRC_ADDR & 0xff,
9834                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
9835                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
9836         },
9837         {
9838         .description = "l2_src_mac",
9839         .field_bit_size = 48,
9840         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9841         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9842         },
9843         {
9844         .description = "tun_id",
9845         .field_bit_size = 24,
9846         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9847         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9848         },
9849         {
9850         .description = "l2_cntxt_id",
9851         .field_bit_size = 10,
9852         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9853         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
9854         .spec_operand = {
9855                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
9856                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
9857                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
9858                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
9859         },
9860         {
9861         .description = "em_profile_id",
9862         .field_bit_size = 8,
9863         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9864         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
9865         .spec_operand = {
9866                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
9867                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
9868                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
9869                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
9870         },
9871         /* class_tid: 15, wh_plus, table: int_em_0 */
9872         {
9873         .description = "spare",
9874         .field_bit_size = 3,
9875         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9876         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9877         },
9878         {
9879         .description = "local_cos",
9880         .field_bit_size = 3,
9881         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9882         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9883         },
9884         {
9885         .description = "l4_dst_port",
9886         .field_bit_size = 16,
9887         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9888         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
9889         .spec_operand = {
9890                 (BNXT_ULP_HF15_IDX_O_TCP_DST_PORT >> 8) & 0xff,
9891                 BNXT_ULP_HF15_IDX_O_TCP_DST_PORT & 0xff,
9892                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
9893                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
9894         },
9895         {
9896         .description = "l4_src_port",
9897         .field_bit_size = 16,
9898         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9899         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
9900         .spec_operand = {
9901                 (BNXT_ULP_HF15_IDX_O_TCP_SRC_PORT >> 8) & 0xff,
9902                 BNXT_ULP_HF15_IDX_O_TCP_SRC_PORT & 0xff,
9903                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
9904                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
9905         },
9906         {
9907         .description = "ip_proto",
9908         .field_bit_size = 8,
9909         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9910         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
9911         .spec_operand = {
9912                 BNXT_ULP_SYM_IP_PROTO_TCP,
9913                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
9914                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
9915         },
9916         {
9917         .description = "ipv6_dst_addr",
9918         .field_bit_size = 128,
9919         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9920         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
9921         .spec_operand = {
9922                 (BNXT_ULP_HF15_IDX_O_IPV6_DST_ADDR >> 8) & 0xff,
9923                 BNXT_ULP_HF15_IDX_O_IPV6_DST_ADDR & 0xff,
9924                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
9925                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
9926         },
9927         {
9928         .description = "ipv6_src_addr",
9929         .field_bit_size = 128,
9930         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9931         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
9932         .spec_operand = {
9933                 (BNXT_ULP_HF15_IDX_O_IPV6_SRC_ADDR >> 8) & 0xff,
9934                 BNXT_ULP_HF15_IDX_O_IPV6_SRC_ADDR & 0xff,
9935                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
9936                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
9937         },
9938         {
9939         .description = "l2_src_mac",
9940         .field_bit_size = 48,
9941         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9942         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9943         },
9944         {
9945         .description = "tun_id",
9946         .field_bit_size = 24,
9947         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9948         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9949         },
9950         {
9951         .description = "l2_cntxt_id",
9952         .field_bit_size = 10,
9953         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9954         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
9955         .spec_operand = {
9956                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
9957                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
9958                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
9959                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
9960         },
9961         {
9962         .description = "em_profile_id",
9963         .field_bit_size = 8,
9964         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9965         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
9966         .spec_operand = {
9967                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
9968                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
9969                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
9970                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
9971         },
9972         /* class_tid: 16, wh_plus, table: l2_cntxt_tcam_0 */
9973         {
9974         .description = "l2_ivlan_vid",
9975         .field_bit_size = 12,
9976         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9977         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9978         },
9979         {
9980         .description = "l2_ovlan_vid",
9981         .field_bit_size = 12,
9982         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9983         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9984         },
9985         {
9986         .description = "mac0_l2_dst",
9987         .field_bit_size = 48,
9988         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
9989         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
9990                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
9991         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
9992         .spec_operand = {
9993                 (BNXT_ULP_HF16_IDX_O_ETH_DMAC >> 8) & 0xff,
9994                 BNXT_ULP_HF16_IDX_O_ETH_DMAC & 0xff,
9995                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
9996                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
9997         },
9998         {
9999         .description = "svif",
10000         .field_bit_size = 8,
10001         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
10002         .mask_operand = {
10003                 (BNXT_ULP_HF16_IDX_SVIF_INDEX >> 8) & 0xff,
10004                 BNXT_ULP_HF16_IDX_SVIF_INDEX & 0xff,
10005                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
10006                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
10007         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
10008         .spec_operand = {
10009                 (BNXT_ULP_HF16_IDX_SVIF_INDEX >> 8) & 0xff,
10010                 BNXT_ULP_HF16_IDX_SVIF_INDEX & 0xff,
10011                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
10012                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
10013         },
10014         {
10015         .description = "sparif",
10016         .field_bit_size = 4,
10017         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10018         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10019         },
10020         {
10021         .description = "tl2_ivlan_vid",
10022         .field_bit_size = 12,
10023         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
10024         .mask_operand = {
10025                 (BNXT_ULP_HF16_IDX_OO_VLAN_VID >> 8) & 0xff,
10026                 BNXT_ULP_HF16_IDX_OO_VLAN_VID & 0xff,
10027                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
10028                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
10029         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
10030         .spec_operand = {
10031                 (BNXT_ULP_HF16_IDX_OO_VLAN_VID >> 8) & 0xff,
10032                 BNXT_ULP_HF16_IDX_OO_VLAN_VID & 0xff,
10033                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
10034                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
10035         },
10036         {
10037         .description = "tl2_ovlan_vid",
10038         .field_bit_size = 12,
10039         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10040         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10041         },
10042         {
10043         .description = "mac1_tl2_dst",
10044         .field_bit_size = 48,
10045         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10046         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10047         },
10048         {
10049         .description = "l2_num_vtags",
10050         .field_bit_size = 2,
10051         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10052         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10053         },
10054         {
10055         .description = "tl2_num_vtags",
10056         .field_bit_size = 2,
10057         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
10058         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
10059                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
10060         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,
10061         .spec_operand = {
10062                 (BNXT_ULP_CF_IDX_O_VTAG_NUM >> 8) & 0xff,
10063                 BNXT_ULP_CF_IDX_O_VTAG_NUM & 0xff,
10064                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
10065                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
10066         },
10067         {
10068         .description = "tun_hdr_type",
10069         .field_bit_size = 4,
10070         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
10071         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
10072                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
10073         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10074         },
10075         {
10076         .description = "key_type",
10077         .field_bit_size = 2,
10078         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10079         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10080         },
10081         {
10082         .description = "valid",
10083         .field_bit_size = 1,
10084         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
10085         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
10086                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
10087         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
10088         .spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
10089                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
10090         },
10091         /* class_tid: 16, wh_plus, table: profile_tcam_cache_0 */
10092         {
10093         .description = "recycle",
10094         .field_bit_size = 1,
10095         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10096         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10097         },
10098         {
10099         .description = "prof_func_id",
10100         .field_bit_size = 7,
10101         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10102         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
10103         .spec_operand = {
10104                 (BNXT_ULP_GLB_REGFILE_INDEX_VXLAN_PROF_FUNC_ID >> 8) & 0xff,
10105                 BNXT_ULP_GLB_REGFILE_INDEX_VXLAN_PROF_FUNC_ID & 0xff,
10106                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
10107                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
10108         },
10109         {
10110         .description = "class_tid",
10111         .field_bit_size = 8,
10112         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10113         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
10114         .spec_operand = {
10115                 (BNXT_ULP_REGFILE_INDEX_CLASS_TID >> 8) & 0xff,
10116                 BNXT_ULP_REGFILE_INDEX_CLASS_TID & 0xff,
10117                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
10118                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
10119         },
10120         /* class_tid: 16, wh_plus, table: profile_tcam_0 */
10121         {
10122         .description = "l4_hdr_is_udp_tcp",
10123         .field_bit_size = 1,
10124         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10125         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10126         },
10127         {
10128         .description = "l4_hdr_type",
10129         .field_bit_size = 4,
10130         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10131         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10132         },
10133         {
10134         .description = "l4_hdr_error",
10135         .field_bit_size = 1,
10136         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10137         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10138         },
10139         {
10140         .description = "l4_hdr_valid",
10141         .field_bit_size = 1,
10142         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10143         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10144         },
10145         {
10146         .description = "l3_ipv6_cmp_dst",
10147         .field_bit_size = 1,
10148         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10149         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10150         },
10151         {
10152         .description = "l3_ipv6_cmp_src",
10153         .field_bit_size = 1,
10154         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10155         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10156         },
10157         {
10158         .description = "l3_hdr_isIP",
10159         .field_bit_size = 1,
10160         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10161         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10162         },
10163         {
10164         .description = "l3_hdr_type",
10165         .field_bit_size = 4,
10166         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10167         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10168         },
10169         {
10170         .description = "l3_hdr_error",
10171         .field_bit_size = 1,
10172         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10173         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10174         },
10175         {
10176         .description = "l3_hdr_valid",
10177         .field_bit_size = 1,
10178         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10179         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10180         },
10181         {
10182         .description = "l2_two_vtags",
10183         .field_bit_size = 1,
10184         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10185         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10186         },
10187         {
10188         .description = "l2_vtag_present",
10189         .field_bit_size = 1,
10190         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10191         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10192         },
10193         {
10194         .description = "l2_uc_mc_bc",
10195         .field_bit_size = 2,
10196         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10197         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10198         },
10199         {
10200         .description = "l2_hdr_type",
10201         .field_bit_size = 2,
10202         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10203         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10204         },
10205         {
10206         .description = "l2_hdr_error",
10207         .field_bit_size = 1,
10208         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10209         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10210         },
10211         {
10212         .description = "l2_hdr_valid",
10213         .field_bit_size = 1,
10214         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10215         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10216         },
10217         {
10218         .description = "tun_hdr_flags",
10219         .field_bit_size = 3,
10220         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10221         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10222         },
10223         {
10224         .description = "tun_hdr_type",
10225         .field_bit_size = 4,
10226         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
10227         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
10228                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
10229         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10230         },
10231         {
10232         .description = "tun_hdr_error",
10233         .field_bit_size = 1,
10234         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
10235         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
10236                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
10237         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10238         },
10239         {
10240         .description = "tun_hdr_valid",
10241         .field_bit_size = 1,
10242         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
10243         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
10244                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
10245         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
10246         .spec_operand = {
10247                 BNXT_ULP_SYM_TUN_HDR_VALID_YES,
10248                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
10249                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
10250         },
10251         {
10252         .description = "tl4_hdr_is_udp_tcp",
10253         .field_bit_size = 1,
10254         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10255         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10256         },
10257         {
10258         .description = "tl4_hdr_type",
10259         .field_bit_size = 4,
10260         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
10261         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
10262                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
10263         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
10264         .spec_operand = {
10265                 BNXT_ULP_SYM_TL4_HDR_TYPE_UDP,
10266                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
10267                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
10268         },
10269         {
10270         .description = "tl4_hdr_error",
10271         .field_bit_size = 1,
10272         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
10273         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
10274                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
10275         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10276         },
10277         {
10278         .description = "tl4_hdr_valid",
10279         .field_bit_size = 1,
10280         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
10281         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
10282                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
10283         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
10284         .spec_operand = {
10285                 BNXT_ULP_SYM_TL4_HDR_VALID_YES,
10286                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
10287                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
10288         },
10289         {
10290         .description = "tl3_ipv6_cmp_dst",
10291         .field_bit_size = 1,
10292         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10293         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10294         },
10295         {
10296         .description = "tl3_ipv6_cmp_src",
10297         .field_bit_size = 1,
10298         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10299         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10300         },
10301         {
10302         .description = "tl3_hdr_isIP",
10303         .field_bit_size = 1,
10304         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10305         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10306         },
10307         {
10308         .description = "tl3_hdr_type",
10309         .field_bit_size = 4,
10310         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
10311         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
10312                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
10313         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10314         },
10315         {
10316         .description = "tl3_hdr_error",
10317         .field_bit_size = 1,
10318         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
10319         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
10320                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
10321         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10322         },
10323         {
10324         .description = "tl3_hdr_valid",
10325         .field_bit_size = 1,
10326         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
10327         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
10328                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
10329         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
10330         .spec_operand = {
10331                 BNXT_ULP_SYM_TL3_HDR_VALID_YES,
10332                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
10333                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
10334         },
10335         {
10336         .description = "tl2_two_vtags",
10337         .field_bit_size = 1,
10338         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10339         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10340         },
10341         {
10342         .description = "tl2_vtag_present",
10343         .field_bit_size = 1,
10344         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10345         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10346         },
10347         {
10348         .description = "tl2_uc_mc_bc",
10349         .field_bit_size = 2,
10350         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
10351         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
10352                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
10353         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10354         },
10355         {
10356         .description = "tl2_hdr_type",
10357         .field_bit_size = 2,
10358         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
10359         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
10360                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
10361         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10362         },
10363         {
10364         .description = "tl2_hdr_valid",
10365         .field_bit_size = 1,
10366         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
10367         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
10368                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
10369         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
10370         .spec_operand = {
10371                 BNXT_ULP_SYM_TL2_HDR_VALID_YES,
10372                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
10373                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
10374         },
10375         {
10376         .description = "hrec_next",
10377         .field_bit_size = 1,
10378         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10379         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10380         },
10381         {
10382         .description = "reserved",
10383         .field_bit_size = 9,
10384         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10385         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10386         },
10387         {
10388         .description = "prof_func_id",
10389         .field_bit_size = 7,
10390         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
10391         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
10392                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
10393         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
10394         .spec_operand = {
10395                 (BNXT_ULP_GLB_REGFILE_INDEX_VXLAN_PROF_FUNC_ID >> 8) & 0xff,
10396                 BNXT_ULP_GLB_REGFILE_INDEX_VXLAN_PROF_FUNC_ID & 0xff,
10397                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
10398                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
10399         },
10400         {
10401         .description = "agg_error",
10402         .field_bit_size = 1,
10403         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10404         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10405         },
10406         {
10407         .description = "recycle_cnt",
10408         .field_bit_size = 2,
10409         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
10410         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
10411                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
10412         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10413         },
10414         {
10415         .description = "pkt_type_0",
10416         .field_bit_size = 2,
10417         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10418         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10419         },
10420         {
10421         .description = "pkt_type_1",
10422         .field_bit_size = 2,
10423         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
10424         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
10425                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
10426         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10427         },
10428         {
10429         .description = "valid",
10430         .field_bit_size = 1,
10431         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
10432         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
10433                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
10434         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
10435         .spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
10436                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
10437         },
10438         /* class_tid: 16, wh_plus, table: ext_em_0 */
10439         {
10440         .description = "spare",
10441         .field_bit_size = 251,
10442         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10443         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10444         },
10445         {
10446         .description = "local_cos",
10447         .field_bit_size = 3,
10448         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10449         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10450         },
10451         {
10452         .description = "t_l4_dst_port",
10453         .field_bit_size = 16,
10454         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10455         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10456         },
10457         {
10458         .description = "t_l4_src_port",
10459         .field_bit_size = 16,
10460         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10461         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10462         },
10463         {
10464         .description = "t_ip_proto",
10465         .field_bit_size = 8,
10466         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10467         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
10468         .spec_operand = {
10469                 BNXT_ULP_SYM_IP_PROTO_UDP,
10470                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
10471                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
10472         },
10473         {
10474         .description = "t_ipv4_dst_addr",
10475         .field_bit_size = 32,
10476         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10477         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
10478         .spec_operand = {
10479                 (BNXT_ULP_HF16_IDX_O_IPV4_DST_ADDR >> 8) & 0xff,
10480                 BNXT_ULP_HF16_IDX_O_IPV4_DST_ADDR & 0xff,
10481                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
10482                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
10483         },
10484         {
10485         .description = "t_ipv4_src_addr",
10486         .field_bit_size = 32,
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_l2_src_mac",
10492         .field_bit_size = 48,
10493         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10494         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10495         },
10496         {
10497         .description = "tun_id",
10498         .field_bit_size = 24,
10499         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10500         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10501         },
10502         {
10503         .description = "l2_cntxt_id",
10504         .field_bit_size = 10,
10505         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10506         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
10507         .spec_operand = {
10508                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
10509                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
10510                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
10511                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
10512         },
10513         {
10514         .description = "em_profile_id",
10515         .field_bit_size = 8,
10516         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10517         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
10518         .spec_operand = {
10519                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
10520                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
10521                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
10522                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
10523         },
10524         /* class_tid: 16, wh_plus, table: int_em_0 */
10525         {
10526         .description = "spare",
10527         .field_bit_size = 3,
10528         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10529         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10530         },
10531         {
10532         .description = "local_cos",
10533         .field_bit_size = 3,
10534         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10535         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10536         },
10537         {
10538         .description = "t_l4_dst_port",
10539         .field_bit_size = 16,
10540         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10541         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10542         },
10543         {
10544         .description = "t_l4_src_port",
10545         .field_bit_size = 16,
10546         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10547         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10548         },
10549         {
10550         .description = "t_ip_proto",
10551         .field_bit_size = 8,
10552         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10553         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
10554         .spec_operand = {
10555                 BNXT_ULP_SYM_IP_PROTO_UDP,
10556                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
10557                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
10558         },
10559         {
10560         .description = "t_ipv4_dst_addr",
10561         .field_bit_size = 32,
10562         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10563         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
10564         .spec_operand = {
10565                 (BNXT_ULP_HF16_IDX_O_IPV4_DST_ADDR >> 8) & 0xff,
10566                 BNXT_ULP_HF16_IDX_O_IPV4_DST_ADDR & 0xff,
10567                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
10568                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
10569         },
10570         {
10571         .description = "t_ipv4_src_addr",
10572         .field_bit_size = 32,
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_l2_src_mac",
10578         .field_bit_size = 48,
10579         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10580         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10581         },
10582         {
10583         .description = "tun_id",
10584         .field_bit_size = 24,
10585         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10586         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10587         },
10588         {
10589         .description = "l2_cntxt_id",
10590         .field_bit_size = 10,
10591         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10592         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
10593         .spec_operand = {
10594                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
10595                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
10596                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
10597                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
10598         },
10599         {
10600         .description = "em_profile_id",
10601         .field_bit_size = 8,
10602         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10603         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
10604         .spec_operand = {
10605                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
10606                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
10607                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
10608                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
10609         },
10610         /* class_tid: 17, wh_plus, table: l2_cntxt_tcam_0 */
10611         {
10612         .description = "l2_ivlan_vid",
10613         .field_bit_size = 12,
10614         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10615         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10616         },
10617         {
10618         .description = "l2_ovlan_vid",
10619         .field_bit_size = 12,
10620         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10621         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10622         },
10623         {
10624         .description = "mac0_l2_dst",
10625         .field_bit_size = 48,
10626         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
10627         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
10628                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
10629         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
10630         .spec_operand = {
10631                 (BNXT_ULP_HF17_IDX_O_ETH_DMAC >> 8) & 0xff,
10632                 BNXT_ULP_HF17_IDX_O_ETH_DMAC & 0xff,
10633                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
10634                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
10635         },
10636         {
10637         .description = "svif",
10638         .field_bit_size = 8,
10639         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
10640         .mask_operand = {
10641                 (BNXT_ULP_HF17_IDX_SVIF_INDEX >> 8) & 0xff,
10642                 BNXT_ULP_HF17_IDX_SVIF_INDEX & 0xff,
10643                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
10644                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
10645         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
10646         .spec_operand = {
10647                 (BNXT_ULP_HF17_IDX_SVIF_INDEX >> 8) & 0xff,
10648                 BNXT_ULP_HF17_IDX_SVIF_INDEX & 0xff,
10649                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
10650                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
10651         },
10652         {
10653         .description = "sparif",
10654         .field_bit_size = 4,
10655         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10656         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10657         },
10658         {
10659         .description = "tl2_ivlan_vid",
10660         .field_bit_size = 12,
10661         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
10662         .mask_operand = {
10663                 (BNXT_ULP_HF17_IDX_OO_VLAN_VID >> 8) & 0xff,
10664                 BNXT_ULP_HF17_IDX_OO_VLAN_VID & 0xff,
10665                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
10666                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
10667         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
10668         .spec_operand = {
10669                 (BNXT_ULP_HF17_IDX_OO_VLAN_VID >> 8) & 0xff,
10670                 BNXT_ULP_HF17_IDX_OO_VLAN_VID & 0xff,
10671                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
10672                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
10673         },
10674         {
10675         .description = "tl2_ovlan_vid",
10676         .field_bit_size = 12,
10677         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10678         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10679         },
10680         {
10681         .description = "mac1_tl2_dst",
10682         .field_bit_size = 48,
10683         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10684         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10685         },
10686         {
10687         .description = "l2_num_vtags",
10688         .field_bit_size = 2,
10689         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10690         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10691         },
10692         {
10693         .description = "tl2_num_vtags",
10694         .field_bit_size = 2,
10695         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
10696         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
10697                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
10698         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,
10699         .spec_operand = {
10700                 (BNXT_ULP_CF_IDX_O_VTAG_NUM >> 8) & 0xff,
10701                 BNXT_ULP_CF_IDX_O_VTAG_NUM & 0xff,
10702                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
10703                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
10704         },
10705         {
10706         .description = "tun_hdr_type",
10707         .field_bit_size = 4,
10708         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
10709         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
10710                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
10711         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10712         },
10713         {
10714         .description = "key_type",
10715         .field_bit_size = 2,
10716         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10717         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10718         },
10719         {
10720         .description = "valid",
10721         .field_bit_size = 1,
10722         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
10723         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
10724                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
10725         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
10726         .spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
10727                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
10728         },
10729         /* class_tid: 17, wh_plus, table: profile_tcam_cache_0 */
10730         {
10731         .description = "recycle",
10732         .field_bit_size = 1,
10733         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10734         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10735         },
10736         {
10737         .description = "prof_func_id",
10738         .field_bit_size = 7,
10739         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10740         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
10741         .spec_operand = {
10742                 (BNXT_ULP_GLB_REGFILE_INDEX_VXLAN_PROF_FUNC_ID >> 8) & 0xff,
10743                 BNXT_ULP_GLB_REGFILE_INDEX_VXLAN_PROF_FUNC_ID & 0xff,
10744                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
10745                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
10746         },
10747         {
10748         .description = "class_tid",
10749         .field_bit_size = 8,
10750         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10751         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
10752         .spec_operand = {
10753                 (BNXT_ULP_REGFILE_INDEX_CLASS_TID >> 8) & 0xff,
10754                 BNXT_ULP_REGFILE_INDEX_CLASS_TID & 0xff,
10755                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
10756                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
10757         },
10758         /* class_tid: 17, wh_plus, table: profile_tcam_0 */
10759         {
10760         .description = "l4_hdr_is_udp_tcp",
10761         .field_bit_size = 1,
10762         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10763         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10764         },
10765         {
10766         .description = "l4_hdr_type",
10767         .field_bit_size = 4,
10768         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10769         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10770         },
10771         {
10772         .description = "l4_hdr_error",
10773         .field_bit_size = 1,
10774         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10775         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10776         },
10777         {
10778         .description = "l4_hdr_valid",
10779         .field_bit_size = 1,
10780         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10781         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10782         },
10783         {
10784         .description = "l3_ipv6_cmp_dst",
10785         .field_bit_size = 1,
10786         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10787         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10788         },
10789         {
10790         .description = "l3_ipv6_cmp_src",
10791         .field_bit_size = 1,
10792         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10793         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10794         },
10795         {
10796         .description = "l3_hdr_isIP",
10797         .field_bit_size = 1,
10798         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10799         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10800         },
10801         {
10802         .description = "l3_hdr_type",
10803         .field_bit_size = 4,
10804         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10805         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10806         },
10807         {
10808         .description = "l3_hdr_error",
10809         .field_bit_size = 1,
10810         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10811         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10812         },
10813         {
10814         .description = "l3_hdr_valid",
10815         .field_bit_size = 1,
10816         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10817         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10818         },
10819         {
10820         .description = "l2_two_vtags",
10821         .field_bit_size = 1,
10822         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10823         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10824         },
10825         {
10826         .description = "l2_vtag_present",
10827         .field_bit_size = 1,
10828         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10829         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10830         },
10831         {
10832         .description = "l2_uc_mc_bc",
10833         .field_bit_size = 2,
10834         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10835         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10836         },
10837         {
10838         .description = "l2_hdr_type",
10839         .field_bit_size = 2,
10840         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10841         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10842         },
10843         {
10844         .description = "l2_hdr_error",
10845         .field_bit_size = 1,
10846         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10847         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10848         },
10849         {
10850         .description = "l2_hdr_valid",
10851         .field_bit_size = 1,
10852         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10853         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10854         },
10855         {
10856         .description = "tun_hdr_flags",
10857         .field_bit_size = 3,
10858         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10859         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10860         },
10861         {
10862         .description = "tun_hdr_type",
10863         .field_bit_size = 4,
10864         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
10865         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
10866                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
10867         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10868         },
10869         {
10870         .description = "tun_hdr_error",
10871         .field_bit_size = 1,
10872         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
10873         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
10874                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
10875         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10876         },
10877         {
10878         .description = "tun_hdr_valid",
10879         .field_bit_size = 1,
10880         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
10881         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
10882                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
10883         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
10884         .spec_operand = {
10885                 BNXT_ULP_SYM_TUN_HDR_VALID_YES,
10886                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
10887                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
10888         },
10889         {
10890         .description = "tl4_hdr_is_udp_tcp",
10891         .field_bit_size = 1,
10892         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10893         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10894         },
10895         {
10896         .description = "tl4_hdr_type",
10897         .field_bit_size = 4,
10898         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
10899         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
10900                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
10901         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
10902         .spec_operand = {
10903                 BNXT_ULP_SYM_TL4_HDR_TYPE_UDP,
10904                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
10905                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
10906         },
10907         {
10908         .description = "tl4_hdr_error",
10909         .field_bit_size = 1,
10910         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
10911         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
10912                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
10913         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10914         },
10915         {
10916         .description = "tl4_hdr_valid",
10917         .field_bit_size = 1,
10918         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
10919         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
10920                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
10921         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
10922         .spec_operand = {
10923                 BNXT_ULP_SYM_TL4_HDR_VALID_YES,
10924                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
10925                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
10926         },
10927         {
10928         .description = "tl3_ipv6_cmp_dst",
10929         .field_bit_size = 1,
10930         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10931         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10932         },
10933         {
10934         .description = "tl3_ipv6_cmp_src",
10935         .field_bit_size = 1,
10936         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10937         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10938         },
10939         {
10940         .description = "tl3_hdr_isIP",
10941         .field_bit_size = 1,
10942         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10943         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10944         },
10945         {
10946         .description = "tl3_hdr_type",
10947         .field_bit_size = 4,
10948         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
10949         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
10950                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
10951         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
10952         .spec_operand = {
10953                 BNXT_ULP_SYM_TL3_HDR_TYPE_IPV6,
10954                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
10955                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
10956         },
10957         {
10958         .description = "tl3_hdr_error",
10959         .field_bit_size = 1,
10960         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
10961         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
10962                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
10963         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10964         },
10965         {
10966         .description = "tl3_hdr_valid",
10967         .field_bit_size = 1,
10968         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
10969         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
10970                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
10971         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
10972         .spec_operand = {
10973                 BNXT_ULP_SYM_TL3_HDR_VALID_YES,
10974                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
10975                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
10976         },
10977         {
10978         .description = "tl2_two_vtags",
10979         .field_bit_size = 1,
10980         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10981         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10982         },
10983         {
10984         .description = "tl2_vtag_present",
10985         .field_bit_size = 1,
10986         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10987         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10988         },
10989         {
10990         .description = "tl2_uc_mc_bc",
10991         .field_bit_size = 2,
10992         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
10993         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
10994                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
10995         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10996         },
10997         {
10998         .description = "tl2_hdr_type",
10999         .field_bit_size = 2,
11000         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
11001         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
11002                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
11003         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11004         },
11005         {
11006         .description = "tl2_hdr_valid",
11007         .field_bit_size = 1,
11008         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
11009         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
11010                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
11011         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
11012         .spec_operand = {
11013                 BNXT_ULP_SYM_TL2_HDR_VALID_YES,
11014                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
11015                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
11016         },
11017         {
11018         .description = "hrec_next",
11019         .field_bit_size = 1,
11020         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11021         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11022         },
11023         {
11024         .description = "reserved",
11025         .field_bit_size = 9,
11026         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11027         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11028         },
11029         {
11030         .description = "prof_func_id",
11031         .field_bit_size = 7,
11032         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
11033         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
11034                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
11035         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
11036         .spec_operand = {
11037                 (BNXT_ULP_GLB_REGFILE_INDEX_VXLAN_PROF_FUNC_ID >> 8) & 0xff,
11038                 BNXT_ULP_GLB_REGFILE_INDEX_VXLAN_PROF_FUNC_ID & 0xff,
11039                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
11040                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
11041         },
11042         {
11043         .description = "agg_error",
11044         .field_bit_size = 1,
11045         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11046         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11047         },
11048         {
11049         .description = "recycle_cnt",
11050         .field_bit_size = 2,
11051         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
11052         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
11053                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
11054         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11055         },
11056         {
11057         .description = "pkt_type_0",
11058         .field_bit_size = 2,
11059         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11060         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11061         },
11062         {
11063         .description = "pkt_type_1",
11064         .field_bit_size = 2,
11065         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
11066         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
11067                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
11068         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11069         },
11070         {
11071         .description = "valid",
11072         .field_bit_size = 1,
11073         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
11074         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
11075                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
11076         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
11077         .spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
11078                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
11079         },
11080         /* class_tid: 17, wh_plus, table: ext_em_0 */
11081         {
11082         .description = "spare",
11083         .field_bit_size = 59,
11084         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11085         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11086         },
11087         {
11088         .description = "local_cos",
11089         .field_bit_size = 3,
11090         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11091         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11092         },
11093         {
11094         .description = "l4_dst_port",
11095         .field_bit_size = 16,
11096         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11097         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11098         },
11099         {
11100         .description = "l4_src_port",
11101         .field_bit_size = 16,
11102         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11103         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11104         },
11105         {
11106         .description = "ip_proto",
11107         .field_bit_size = 8,
11108         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11109         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
11110         .spec_operand = {
11111                 BNXT_ULP_SYM_IP_PROTO_UDP,
11112                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
11113                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
11114         },
11115         {
11116         .description = "ipv6_dst_addr",
11117         .field_bit_size = 128,
11118         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11119         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
11120         .spec_operand = {
11121                 (BNXT_ULP_HF17_IDX_O_IPV6_DST_ADDR >> 8) & 0xff,
11122                 BNXT_ULP_HF17_IDX_O_IPV6_DST_ADDR & 0xff,
11123                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
11124                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
11125         },
11126         {
11127         .description = "ipv6_src_addr",
11128         .field_bit_size = 128,
11129         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11130         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11131         },
11132         {
11133         .description = "l2_src_mac",
11134         .field_bit_size = 48,
11135         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11136         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11137         },
11138         {
11139         .description = "tun_id",
11140         .field_bit_size = 24,
11141         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11142         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11143         },
11144         {
11145         .description = "l2_cntxt_id",
11146         .field_bit_size = 10,
11147         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11148         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
11149         .spec_operand = {
11150                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
11151                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
11152                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
11153                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
11154         },
11155         {
11156         .description = "em_profile_id",
11157         .field_bit_size = 8,
11158         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11159         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
11160         .spec_operand = {
11161                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
11162                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
11163                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
11164                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
11165         },
11166         /* class_tid: 17, wh_plus, table: int_em_0 */
11167         {
11168         .description = "spare",
11169         .field_bit_size = 3,
11170         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11171         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11172         },
11173         {
11174         .description = "local_cos",
11175         .field_bit_size = 3,
11176         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11177         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11178         },
11179         {
11180         .description = "l4_dst_port",
11181         .field_bit_size = 16,
11182         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11183         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11184         },
11185         {
11186         .description = "l4_src_port",
11187         .field_bit_size = 16,
11188         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11189         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11190         },
11191         {
11192         .description = "ip_proto",
11193         .field_bit_size = 8,
11194         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11195         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
11196         .spec_operand = {
11197                 BNXT_ULP_SYM_IP_PROTO_UDP,
11198                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
11199                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
11200         },
11201         {
11202         .description = "ipv6_dst_addr",
11203         .field_bit_size = 128,
11204         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11205         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
11206         .spec_operand = {
11207                 (BNXT_ULP_HF17_IDX_O_IPV6_DST_ADDR >> 8) & 0xff,
11208                 BNXT_ULP_HF17_IDX_O_IPV6_DST_ADDR & 0xff,
11209                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
11210                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
11211         },
11212         {
11213         .description = "ipv6_src_addr",
11214         .field_bit_size = 128,
11215         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11216         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11217         },
11218         {
11219         .description = "l2_src_mac",
11220         .field_bit_size = 48,
11221         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11222         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11223         },
11224         {
11225         .description = "tun_id",
11226         .field_bit_size = 24,
11227         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11228         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11229         },
11230         {
11231         .description = "l2_cntxt_id",
11232         .field_bit_size = 10,
11233         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11234         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
11235         .spec_operand = {
11236                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
11237                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
11238                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
11239                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
11240         },
11241         {
11242         .description = "em_profile_id",
11243         .field_bit_size = 8,
11244         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11245         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
11246         .spec_operand = {
11247                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
11248                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
11249                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
11250                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
11251         },
11252         /* class_tid: 18, wh_plus, table: l2_cntxt_tcam_0 */
11253         {
11254         .description = "l2_ivlan_vid",
11255         .field_bit_size = 12,
11256         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11257         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11258         },
11259         {
11260         .description = "l2_ovlan_vid",
11261         .field_bit_size = 12,
11262         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11263         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11264         },
11265         {
11266         .description = "mac0_l2_dst",
11267         .field_bit_size = 48,
11268         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
11269         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
11270                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
11271         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
11272         .spec_operand = {
11273                 (BNXT_ULP_HF18_IDX_O_ETH_DMAC >> 8) & 0xff,
11274                 BNXT_ULP_HF18_IDX_O_ETH_DMAC & 0xff,
11275                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
11276                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
11277         },
11278         {
11279         .description = "svif",
11280         .field_bit_size = 8,
11281         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
11282         .mask_operand = {
11283                 (BNXT_ULP_HF18_IDX_SVIF_INDEX >> 8) & 0xff,
11284                 BNXT_ULP_HF18_IDX_SVIF_INDEX & 0xff,
11285                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
11286                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
11287         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
11288         .spec_operand = {
11289                 (BNXT_ULP_HF18_IDX_SVIF_INDEX >> 8) & 0xff,
11290                 BNXT_ULP_HF18_IDX_SVIF_INDEX & 0xff,
11291                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
11292                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
11293         },
11294         {
11295         .description = "sparif",
11296         .field_bit_size = 4,
11297         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11298         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11299         },
11300         {
11301         .description = "tl2_ivlan_vid",
11302         .field_bit_size = 12,
11303         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11304         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11305         },
11306         {
11307         .description = "tl2_ovlan_vid",
11308         .field_bit_size = 12,
11309         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11310         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11311         },
11312         {
11313         .description = "mac1_tl2_dst",
11314         .field_bit_size = 48,
11315         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11316         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11317         },
11318         {
11319         .description = "l2_num_vtags",
11320         .field_bit_size = 2,
11321         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11322         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11323         },
11324         {
11325         .description = "tl2_num_vtags",
11326         .field_bit_size = 2,
11327         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
11328         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
11329                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
11330         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11331         },
11332         {
11333         .description = "tun_hdr_type",
11334         .field_bit_size = 4,
11335         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
11336         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
11337                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
11338         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11339         },
11340         {
11341         .description = "key_type",
11342         .field_bit_size = 2,
11343         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11344         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11345         },
11346         {
11347         .description = "valid",
11348         .field_bit_size = 1,
11349         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
11350         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
11351                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
11352         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
11353         .spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
11354                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
11355         },
11356         /* class_tid: 18, wh_plus, table: profile_tcam_cache_0 */
11357         {
11358         .description = "recycle",
11359         .field_bit_size = 1,
11360         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11361         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11362         },
11363         {
11364         .description = "prof_func_id",
11365         .field_bit_size = 7,
11366         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11367         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
11368         .spec_operand = {
11369                 (BNXT_ULP_GLB_REGFILE_INDEX_VXLAN_PROF_FUNC_ID >> 8) & 0xff,
11370                 BNXT_ULP_GLB_REGFILE_INDEX_VXLAN_PROF_FUNC_ID & 0xff,
11371                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
11372                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
11373         },
11374         {
11375         .description = "class_tid",
11376         .field_bit_size = 8,
11377         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11378         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11379         },
11380         /* class_tid: 18, wh_plus, table: profile_tcam_0 */
11381         {
11382         .description = "l4_hdr_is_udp_tcp",
11383         .field_bit_size = 1,
11384         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11385         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11386         },
11387         {
11388         .description = "l4_hdr_type",
11389         .field_bit_size = 4,
11390         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11391         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11392         },
11393         {
11394         .description = "l4_hdr_error",
11395         .field_bit_size = 1,
11396         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11397         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11398         },
11399         {
11400         .description = "l4_hdr_valid",
11401         .field_bit_size = 1,
11402         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11403         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11404         },
11405         {
11406         .description = "l3_ipv6_cmp_dst",
11407         .field_bit_size = 1,
11408         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11409         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11410         },
11411         {
11412         .description = "l3_ipv6_cmp_src",
11413         .field_bit_size = 1,
11414         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11415         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11416         },
11417         {
11418         .description = "l3_hdr_isIP",
11419         .field_bit_size = 1,
11420         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11421         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11422         },
11423         {
11424         .description = "l3_hdr_type",
11425         .field_bit_size = 4,
11426         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11427         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11428         },
11429         {
11430         .description = "l3_hdr_error",
11431         .field_bit_size = 1,
11432         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11433         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11434         },
11435         {
11436         .description = "l3_hdr_valid",
11437         .field_bit_size = 1,
11438         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11439         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11440         },
11441         {
11442         .description = "l2_two_vtags",
11443         .field_bit_size = 1,
11444         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11445         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11446         },
11447         {
11448         .description = "l2_vtag_present",
11449         .field_bit_size = 1,
11450         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11451         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11452         },
11453         {
11454         .description = "l2_uc_mc_bc",
11455         .field_bit_size = 2,
11456         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11457         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11458         },
11459         {
11460         .description = "l2_hdr_type",
11461         .field_bit_size = 2,
11462         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11463         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11464         },
11465         {
11466         .description = "l2_hdr_error",
11467         .field_bit_size = 1,
11468         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11469         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11470         },
11471         {
11472         .description = "l2_hdr_valid",
11473         .field_bit_size = 1,
11474         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11475         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11476         },
11477         {
11478         .description = "tun_hdr_flags",
11479         .field_bit_size = 3,
11480         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11481         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11482         },
11483         {
11484         .description = "tun_hdr_type",
11485         .field_bit_size = 4,
11486         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
11487         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
11488                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
11489         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11490         },
11491         {
11492         .description = "tun_hdr_error",
11493         .field_bit_size = 1,
11494         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
11495         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
11496                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
11497         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11498         },
11499         {
11500         .description = "tun_hdr_valid",
11501         .field_bit_size = 1,
11502         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
11503         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
11504                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
11505         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
11506         .spec_operand = {
11507                 BNXT_ULP_SYM_TUN_HDR_VALID_YES,
11508                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
11509                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
11510         },
11511         {
11512         .description = "tl4_hdr_is_udp_tcp",
11513         .field_bit_size = 1,
11514         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11515         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11516         },
11517         {
11518         .description = "tl4_hdr_type",
11519         .field_bit_size = 4,
11520         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
11521         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
11522                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
11523         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
11524         .spec_operand = {
11525                 BNXT_ULP_SYM_TL4_HDR_TYPE_UDP,
11526                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
11527                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
11528         },
11529         {
11530         .description = "tl4_hdr_error",
11531         .field_bit_size = 1,
11532         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
11533         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
11534                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
11535         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11536         },
11537         {
11538         .description = "tl4_hdr_valid",
11539         .field_bit_size = 1,
11540         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
11541         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
11542                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
11543         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
11544         .spec_operand = {
11545                 BNXT_ULP_SYM_TL4_HDR_VALID_YES,
11546                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
11547                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
11548         },
11549         {
11550         .description = "tl3_ipv6_cmp_dst",
11551         .field_bit_size = 1,
11552         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11553         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11554         },
11555         {
11556         .description = "tl3_ipv6_cmp_src",
11557         .field_bit_size = 1,
11558         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11559         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11560         },
11561         {
11562         .description = "tl3_hdr_isIP",
11563         .field_bit_size = 1,
11564         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11565         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11566         },
11567         {
11568         .description = "tl3_hdr_type",
11569         .field_bit_size = 4,
11570         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
11571         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
11572                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
11573         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11574         },
11575         {
11576         .description = "tl3_hdr_error",
11577         .field_bit_size = 1,
11578         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
11579         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
11580                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
11581         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11582         },
11583         {
11584         .description = "tl3_hdr_valid",
11585         .field_bit_size = 1,
11586         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
11587         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
11588                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
11589         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
11590         .spec_operand = {
11591                 BNXT_ULP_SYM_TL3_HDR_VALID_YES,
11592                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
11593                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
11594         },
11595         {
11596         .description = "tl2_two_vtags",
11597         .field_bit_size = 1,
11598         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11599         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11600         },
11601         {
11602         .description = "tl2_vtag_present",
11603         .field_bit_size = 1,
11604         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11605         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11606         },
11607         {
11608         .description = "tl2_uc_mc_bc",
11609         .field_bit_size = 2,
11610         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
11611         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
11612                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
11613         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11614         },
11615         {
11616         .description = "tl2_hdr_type",
11617         .field_bit_size = 2,
11618         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
11619         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
11620                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
11621         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11622         },
11623         {
11624         .description = "tl2_hdr_valid",
11625         .field_bit_size = 1,
11626         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
11627         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
11628                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
11629         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
11630         .spec_operand = {
11631                 BNXT_ULP_SYM_TL2_HDR_VALID_YES,
11632                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
11633                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
11634         },
11635         {
11636         .description = "hrec_next",
11637         .field_bit_size = 1,
11638         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11639         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11640         },
11641         {
11642         .description = "reserved",
11643         .field_bit_size = 9,
11644         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11645         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11646         },
11647         {
11648         .description = "prof_func_id",
11649         .field_bit_size = 7,
11650         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
11651         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
11652                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
11653         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
11654         .spec_operand = {
11655                 (BNXT_ULP_GLB_REGFILE_INDEX_VXLAN_PROF_FUNC_ID >> 8) & 0xff,
11656                 BNXT_ULP_GLB_REGFILE_INDEX_VXLAN_PROF_FUNC_ID & 0xff,
11657                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
11658                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
11659         },
11660         {
11661         .description = "agg_error",
11662         .field_bit_size = 1,
11663         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11664         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11665         },
11666         {
11667         .description = "recycle_cnt",
11668         .field_bit_size = 2,
11669         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
11670         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
11671                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
11672         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11673         },
11674         {
11675         .description = "pkt_type_0",
11676         .field_bit_size = 2,
11677         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11678         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11679         },
11680         {
11681         .description = "pkt_type_1",
11682         .field_bit_size = 2,
11683         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
11684         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
11685                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
11686         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11687         },
11688         {
11689         .description = "valid",
11690         .field_bit_size = 1,
11691         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
11692         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
11693                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
11694         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
11695         .spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
11696                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
11697         },
11698         /* class_tid: 18, wh_plus, table: wm_0 */
11699         {
11700         .description = "wc_profile_id",
11701         .field_bit_size = 8,
11702         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
11703         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
11704                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
11705         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
11706         .spec_operand = {
11707                 (BNXT_ULP_REGFILE_INDEX_WC_PROFILE_ID_0 >> 8) & 0xff,
11708                 BNXT_ULP_REGFILE_INDEX_WC_PROFILE_ID_0 & 0xff,
11709                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
11710                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
11711         },
11712         {
11713         .description = "spare",
11714         .field_bit_size = 10,
11715         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11716         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11717         },
11718         {
11719         .description = "l2_cntxt_id",
11720         .field_bit_size = 10,
11721         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
11722         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
11723                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
11724         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
11725         .spec_operand = {
11726                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
11727                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
11728                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
11729                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
11730         },
11731         {
11732         .description = "tun_type",
11733         .field_bit_size = 4,
11734         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
11735         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
11736                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
11737         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11738         },
11739         {
11740         .description = "others",
11741         .field_bit_size = 128,
11742         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11743         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11744         },
11745         /* class_tid: 19, wh_plus, table: l2_cntxt_tcam_0 */
11746         {
11747         .description = "l2_ivlan_vid",
11748         .field_bit_size = 12,
11749         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11750         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11751         },
11752         {
11753         .description = "l2_ovlan_vid",
11754         .field_bit_size = 12,
11755         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11756         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11757         },
11758         {
11759         .description = "mac0_l2_dst",
11760         .field_bit_size = 48,
11761         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
11762         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
11763                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
11764         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
11765         .spec_operand = {
11766                 (BNXT_ULP_HF19_IDX_O_ETH_DMAC >> 8) & 0xff,
11767                 BNXT_ULP_HF19_IDX_O_ETH_DMAC & 0xff,
11768                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
11769                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
11770         },
11771         {
11772         .description = "svif",
11773         .field_bit_size = 8,
11774         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
11775         .mask_operand = {
11776                 (BNXT_ULP_HF19_IDX_SVIF_INDEX >> 8) & 0xff,
11777                 BNXT_ULP_HF19_IDX_SVIF_INDEX & 0xff,
11778                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
11779                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
11780         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
11781         .spec_operand = {
11782                 (BNXT_ULP_HF19_IDX_SVIF_INDEX >> 8) & 0xff,
11783                 BNXT_ULP_HF19_IDX_SVIF_INDEX & 0xff,
11784                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
11785                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
11786         },
11787         {
11788         .description = "sparif",
11789         .field_bit_size = 4,
11790         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11791         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11792         },
11793         {
11794         .description = "tl2_ivlan_vid",
11795         .field_bit_size = 12,
11796         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11797         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11798         },
11799         {
11800         .description = "tl2_ovlan_vid",
11801         .field_bit_size = 12,
11802         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11803         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11804         },
11805         {
11806         .description = "mac1_tl2_dst",
11807         .field_bit_size = 48,
11808         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11809         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11810         },
11811         {
11812         .description = "l2_num_vtags",
11813         .field_bit_size = 2,
11814         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11815         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11816         },
11817         {
11818         .description = "tl2_num_vtags",
11819         .field_bit_size = 2,
11820         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
11821         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
11822                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
11823         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11824         },
11825         {
11826         .description = "tun_hdr_type",
11827         .field_bit_size = 4,
11828         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
11829         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
11830                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
11831         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11832         },
11833         {
11834         .description = "key_type",
11835         .field_bit_size = 2,
11836         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11837         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11838         },
11839         {
11840         .description = "valid",
11841         .field_bit_size = 1,
11842         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
11843         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
11844                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
11845         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
11846         .spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
11847                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
11848         },
11849         /* class_tid: 19, wh_plus, table: profile_tcam_cache_0 */
11850         {
11851         .description = "recycle",
11852         .field_bit_size = 1,
11853         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11854         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11855         },
11856         {
11857         .description = "prof_func_id",
11858         .field_bit_size = 7,
11859         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11860         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
11861         .spec_operand = {
11862                 (BNXT_ULP_GLB_REGFILE_INDEX_VXLAN_PROF_FUNC_ID >> 8) & 0xff,
11863                 BNXT_ULP_GLB_REGFILE_INDEX_VXLAN_PROF_FUNC_ID & 0xff,
11864                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
11865                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
11866         },
11867         {
11868         .description = "class_tid",
11869         .field_bit_size = 8,
11870         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11871         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11872         },
11873         /* class_tid: 19, wh_plus, table: profile_tcam_0 */
11874         {
11875         .description = "l4_hdr_is_udp_tcp",
11876         .field_bit_size = 1,
11877         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11878         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11879         },
11880         {
11881         .description = "l4_hdr_type",
11882         .field_bit_size = 4,
11883         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11884         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11885         },
11886         {
11887         .description = "l4_hdr_error",
11888         .field_bit_size = 1,
11889         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11890         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11891         },
11892         {
11893         .description = "l4_hdr_valid",
11894         .field_bit_size = 1,
11895         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11896         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11897         },
11898         {
11899         .description = "l3_ipv6_cmp_dst",
11900         .field_bit_size = 1,
11901         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11902         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11903         },
11904         {
11905         .description = "l3_ipv6_cmp_src",
11906         .field_bit_size = 1,
11907         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11908         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11909         },
11910         {
11911         .description = "l3_hdr_isIP",
11912         .field_bit_size = 1,
11913         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11914         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11915         },
11916         {
11917         .description = "l3_hdr_type",
11918         .field_bit_size = 4,
11919         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11920         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11921         },
11922         {
11923         .description = "l3_hdr_error",
11924         .field_bit_size = 1,
11925         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11926         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11927         },
11928         {
11929         .description = "l3_hdr_valid",
11930         .field_bit_size = 1,
11931         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11932         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11933         },
11934         {
11935         .description = "l2_two_vtags",
11936         .field_bit_size = 1,
11937         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11938         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11939         },
11940         {
11941         .description = "l2_vtag_present",
11942         .field_bit_size = 1,
11943         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11944         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11945         },
11946         {
11947         .description = "l2_uc_mc_bc",
11948         .field_bit_size = 2,
11949         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11950         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11951         },
11952         {
11953         .description = "l2_hdr_type",
11954         .field_bit_size = 2,
11955         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11956         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11957         },
11958         {
11959         .description = "l2_hdr_error",
11960         .field_bit_size = 1,
11961         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11962         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11963         },
11964         {
11965         .description = "l2_hdr_valid",
11966         .field_bit_size = 1,
11967         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11968         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11969         },
11970         {
11971         .description = "tun_hdr_flags",
11972         .field_bit_size = 3,
11973         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11974         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11975         },
11976         {
11977         .description = "tun_hdr_type",
11978         .field_bit_size = 4,
11979         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
11980         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
11981                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
11982         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11983         },
11984         {
11985         .description = "tun_hdr_error",
11986         .field_bit_size = 1,
11987         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
11988         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
11989                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
11990         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11991         },
11992         {
11993         .description = "tun_hdr_valid",
11994         .field_bit_size = 1,
11995         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
11996         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
11997                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
11998         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
11999         .spec_operand = {
12000                 BNXT_ULP_SYM_TUN_HDR_VALID_YES,
12001                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
12002                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
12003         },
12004         {
12005         .description = "tl4_hdr_is_udp_tcp",
12006         .field_bit_size = 1,
12007         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12008         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12009         },
12010         {
12011         .description = "tl4_hdr_type",
12012         .field_bit_size = 4,
12013         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
12014         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
12015                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
12016         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
12017         .spec_operand = {
12018                 BNXT_ULP_SYM_TL4_HDR_TYPE_UDP,
12019                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
12020                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
12021         },
12022         {
12023         .description = "tl4_hdr_error",
12024         .field_bit_size = 1,
12025         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
12026         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
12027                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
12028         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12029         },
12030         {
12031         .description = "tl4_hdr_valid",
12032         .field_bit_size = 1,
12033         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
12034         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
12035                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
12036         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
12037         .spec_operand = {
12038                 BNXT_ULP_SYM_TL4_HDR_VALID_YES,
12039                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
12040                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
12041         },
12042         {
12043         .description = "tl3_ipv6_cmp_dst",
12044         .field_bit_size = 1,
12045         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12046         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12047         },
12048         {
12049         .description = "tl3_ipv6_cmp_src",
12050         .field_bit_size = 1,
12051         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12052         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12053         },
12054         {
12055         .description = "tl3_hdr_isIP",
12056         .field_bit_size = 1,
12057         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12058         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12059         },
12060         {
12061         .description = "tl3_hdr_type",
12062         .field_bit_size = 4,
12063         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
12064         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
12065                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
12066         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12067         },
12068         {
12069         .description = "tl3_hdr_error",
12070         .field_bit_size = 1,
12071         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
12072         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
12073                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
12074         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12075         },
12076         {
12077         .description = "tl3_hdr_valid",
12078         .field_bit_size = 1,
12079         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
12080         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
12081                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
12082         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
12083         .spec_operand = {
12084                 BNXT_ULP_SYM_TL3_HDR_VALID_YES,
12085                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
12086                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
12087         },
12088         {
12089         .description = "tl2_two_vtags",
12090         .field_bit_size = 1,
12091         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12092         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12093         },
12094         {
12095         .description = "tl2_vtag_present",
12096         .field_bit_size = 1,
12097         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12098         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12099         },
12100         {
12101         .description = "tl2_uc_mc_bc",
12102         .field_bit_size = 2,
12103         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
12104         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
12105                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
12106         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12107         },
12108         {
12109         .description = "tl2_hdr_type",
12110         .field_bit_size = 2,
12111         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
12112         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
12113                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
12114         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12115         },
12116         {
12117         .description = "tl2_hdr_valid",
12118         .field_bit_size = 1,
12119         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
12120         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
12121                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
12122         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
12123         .spec_operand = {
12124                 BNXT_ULP_SYM_TL2_HDR_VALID_YES,
12125                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
12126                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
12127         },
12128         {
12129         .description = "hrec_next",
12130         .field_bit_size = 1,
12131         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12132         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12133         },
12134         {
12135         .description = "reserved",
12136         .field_bit_size = 9,
12137         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12138         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12139         },
12140         {
12141         .description = "prof_func_id",
12142         .field_bit_size = 7,
12143         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
12144         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
12145                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
12146         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
12147         .spec_operand = {
12148                 (BNXT_ULP_GLB_REGFILE_INDEX_VXLAN_PROF_FUNC_ID >> 8) & 0xff,
12149                 BNXT_ULP_GLB_REGFILE_INDEX_VXLAN_PROF_FUNC_ID & 0xff,
12150                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
12151                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
12152         },
12153         {
12154         .description = "agg_error",
12155         .field_bit_size = 1,
12156         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12157         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12158         },
12159         {
12160         .description = "recycle_cnt",
12161         .field_bit_size = 2,
12162         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
12163         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
12164                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
12165         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12166         },
12167         {
12168         .description = "pkt_type_0",
12169         .field_bit_size = 2,
12170         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12171         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12172         },
12173         {
12174         .description = "pkt_type_1",
12175         .field_bit_size = 2,
12176         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
12177         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
12178                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
12179         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12180         },
12181         {
12182         .description = "valid",
12183         .field_bit_size = 1,
12184         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
12185         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
12186                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
12187         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
12188         .spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
12189                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
12190         },
12191         /* class_tid: 19, wh_plus, table: int_em_0 */
12192         {
12193         .description = "spare",
12194         .field_bit_size = 3,
12195         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12196         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12197         },
12198         {
12199         .description = "l2_inner_vid",
12200         .field_bit_size = 12,
12201         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12202         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12203         },
12204         {
12205         .description = "l2_dst_mac",
12206         .field_bit_size = 48,
12207         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12208         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
12209         .spec_operand = {
12210                 (BNXT_ULP_HF19_IDX_I_ETH_DMAC >> 8) & 0xff,
12211                 BNXT_ULP_HF19_IDX_I_ETH_DMAC & 0xff,
12212                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
12213                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
12214         },
12215         {
12216         .description = "tun_id",
12217         .field_bit_size = 24,
12218         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12219         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
12220         .spec_operand = {
12221                 (BNXT_ULP_HF19_IDX_T_VXLAN_VNI >> 8) & 0xff,
12222                 BNXT_ULP_HF19_IDX_T_VXLAN_VNI & 0xff,
12223                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
12224                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
12225         },
12226         {
12227         .description = "tun_flags",
12228         .field_bit_size = 3,
12229         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12230         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12231         },
12232         {
12233         .description = "tun_type",
12234         .field_bit_size = 4,
12235         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12236         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12237         },
12238         {
12239         .description = "l2_cntxt_id",
12240         .field_bit_size = 10,
12241         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12242         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
12243         .spec_operand = {
12244                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
12245                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
12246                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
12247                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
12248         },
12249         {
12250         .description = "em_profile_id",
12251         .field_bit_size = 8,
12252         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12253         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
12254         .spec_operand = {
12255                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
12256                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
12257                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
12258                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
12259         },
12260         /* class_tid: 19, wh_plus, table: ext_em_0 */
12261         {
12262         .description = "spare",
12263         .field_bit_size = 339,
12264         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12265         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12266         },
12267         {
12268         .description = "l2_inner_vid",
12269         .field_bit_size = 12,
12270         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12271         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12272         },
12273         {
12274         .description = "l2_dst_mac",
12275         .field_bit_size = 48,
12276         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12277         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
12278         .spec_operand = {
12279                 (BNXT_ULP_HF19_IDX_I_ETH_DMAC >> 8) & 0xff,
12280                 BNXT_ULP_HF19_IDX_I_ETH_DMAC & 0xff,
12281                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
12282                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
12283         },
12284         {
12285         .description = "tun_id",
12286         .field_bit_size = 24,
12287         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12288         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
12289         .spec_operand = {
12290                 (BNXT_ULP_HF19_IDX_T_VXLAN_VNI >> 8) & 0xff,
12291                 BNXT_ULP_HF19_IDX_T_VXLAN_VNI & 0xff,
12292                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
12293                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
12294         },
12295         {
12296         .description = "tun_flags",
12297         .field_bit_size = 3,
12298         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12299         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12300         },
12301         {
12302         .description = "tun_type",
12303         .field_bit_size = 4,
12304         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12305         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12306         },
12307         {
12308         .description = "l2_cntxt_id",
12309         .field_bit_size = 10,
12310         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12311         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
12312         .spec_operand = {
12313                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
12314                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
12315                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
12316                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
12317         },
12318         {
12319         .description = "em_profile_id",
12320         .field_bit_size = 8,
12321         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12322         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
12323         .spec_operand = {
12324                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
12325                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
12326                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
12327                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
12328         },
12329         /* class_tid: 20, wh_plus, table: l2_cntxt_cache_0 */
12330         {
12331         .description = "svif",
12332         .field_bit_size = 8,
12333         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12334         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
12335         .spec_operand = {
12336                 (BNXT_ULP_HF20_IDX_SVIF_INDEX >> 8) & 0xff,
12337                 BNXT_ULP_HF20_IDX_SVIF_INDEX & 0xff,
12338                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
12339                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
12340         },
12341         /* class_tid: 20, wh_plus, table: l2_cntxt_tcam_0 */
12342         {
12343         .description = "l2_ivlan_vid",
12344         .field_bit_size = 12,
12345         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12346         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12347         },
12348         {
12349         .description = "l2_ovlan_vid",
12350         .field_bit_size = 12,
12351         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12352         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12353         },
12354         {
12355         .description = "mac0_l2_dst",
12356         .field_bit_size = 48,
12357         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12358         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12359         },
12360         {
12361         .description = "svif",
12362         .field_bit_size = 8,
12363         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
12364         .mask_operand = {
12365                 (BNXT_ULP_HF20_IDX_SVIF_INDEX >> 8) & 0xff,
12366                 BNXT_ULP_HF20_IDX_SVIF_INDEX & 0xff,
12367                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
12368                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
12369         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
12370         .spec_operand = {
12371                 (BNXT_ULP_HF20_IDX_SVIF_INDEX >> 8) & 0xff,
12372                 BNXT_ULP_HF20_IDX_SVIF_INDEX & 0xff,
12373                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
12374                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
12375         },
12376         {
12377         .description = "sparif",
12378         .field_bit_size = 4,
12379         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12380         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12381         },
12382         {
12383         .description = "tl2_ivlan_vid",
12384         .field_bit_size = 12,
12385         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12386         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12387         },
12388         {
12389         .description = "tl2_ovlan_vid",
12390         .field_bit_size = 12,
12391         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12392         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12393         },
12394         {
12395         .description = "mac1_tl2_dst",
12396         .field_bit_size = 48,
12397         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12398         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12399         },
12400         {
12401         .description = "l2_num_vtags",
12402         .field_bit_size = 2,
12403         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12404         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12405         },
12406         {
12407         .description = "tl2_num_vtags",
12408         .field_bit_size = 2,
12409         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12410         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12411         },
12412         {
12413         .description = "tun_hdr_type",
12414         .field_bit_size = 4,
12415         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
12416         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
12417                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
12418         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
12419         .spec_operand = {
12420                 BNXT_ULP_SYM_TUN_HDR_TYPE_NONE,
12421                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
12422                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
12423         },
12424         {
12425         .description = "key_type",
12426         .field_bit_size = 2,
12427         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12428         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12429         },
12430         {
12431         .description = "valid",
12432         .field_bit_size = 1,
12433         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
12434         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
12435                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
12436         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
12437         .spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
12438                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
12439         },
12440         /* class_tid: 20, wh_plus, table: profile_tcam_cache_0 */
12441         {
12442         .description = "recycle",
12443         .field_bit_size = 1,
12444         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12445         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12446         },
12447         {
12448         .description = "prof_func_id",
12449         .field_bit_size = 7,
12450         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12451         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
12452         .spec_operand = {
12453                 (BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID >> 8) & 0xff,
12454                 BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID & 0xff,
12455                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
12456                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
12457         },
12458         {
12459         .description = "class_tid",
12460         .field_bit_size = 8,
12461         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12462         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
12463         .spec_operand = {
12464                 (BNXT_ULP_REGFILE_INDEX_CLASS_TID >> 8) & 0xff,
12465                 BNXT_ULP_REGFILE_INDEX_CLASS_TID & 0xff,
12466                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
12467                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
12468         },
12469         /* class_tid: 20, wh_plus, table: profile_tcam_0 */
12470         {
12471         .description = "l4_hdr_is_udp_tcp",
12472         .field_bit_size = 1,
12473         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12474         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12475         },
12476         {
12477         .description = "l4_hdr_type",
12478         .field_bit_size = 4,
12479         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
12480         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
12481                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
12482         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
12483         .spec_operand = {
12484                 BNXT_ULP_SYM_L4_HDR_TYPE_UDP,
12485                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
12486                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
12487         },
12488         {
12489         .description = "l4_hdr_error",
12490         .field_bit_size = 1,
12491         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
12492         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
12493                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
12494         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12495         },
12496         {
12497         .description = "l4_hdr_valid",
12498         .field_bit_size = 1,
12499         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
12500         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
12501                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
12502         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
12503         .spec_operand = {
12504                 BNXT_ULP_SYM_L4_HDR_VALID_YES,
12505                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
12506                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
12507         },
12508         {
12509         .description = "l3_ipv6_cmp_dst",
12510         .field_bit_size = 1,
12511         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12512         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12513         },
12514         {
12515         .description = "l3_ipv6_cmp_src",
12516         .field_bit_size = 1,
12517         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12518         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12519         },
12520         {
12521         .description = "l3_hdr_isIP",
12522         .field_bit_size = 1,
12523         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12524         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12525         },
12526         {
12527         .description = "l3_hdr_type",
12528         .field_bit_size = 4,
12529         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
12530         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
12531                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
12532         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12533         },
12534         {
12535         .description = "l3_hdr_error",
12536         .field_bit_size = 1,
12537         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
12538         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
12539                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
12540         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12541         },
12542         {
12543         .description = "l3_hdr_valid",
12544         .field_bit_size = 1,
12545         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
12546         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
12547                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
12548         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
12549         .spec_operand = {
12550                 BNXT_ULP_SYM_L3_HDR_VALID_YES,
12551                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
12552                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
12553         },
12554         {
12555         .description = "l2_two_vtags",
12556         .field_bit_size = 1,
12557         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12558         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12559         },
12560         {
12561         .description = "l2_vtag_present",
12562         .field_bit_size = 1,
12563         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12564         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12565         },
12566         {
12567         .description = "l2_uc_mc_bc",
12568         .field_bit_size = 2,
12569         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12570         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12571         },
12572         {
12573         .description = "l2_hdr_type",
12574         .field_bit_size = 2,
12575         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
12576         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
12577                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
12578         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12579         },
12580         {
12581         .description = "l2_hdr_error",
12582         .field_bit_size = 1,
12583         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
12584         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
12585                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
12586         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12587         },
12588         {
12589         .description = "l2_hdr_valid",
12590         .field_bit_size = 1,
12591         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
12592         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
12593                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
12594         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
12595         .spec_operand = {
12596                 BNXT_ULP_SYM_L2_HDR_VALID_YES,
12597                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
12598                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
12599         },
12600         {
12601         .description = "tun_hdr_flags",
12602         .field_bit_size = 3,
12603         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12604         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12605         },
12606         {
12607         .description = "tun_hdr_type",
12608         .field_bit_size = 4,
12609         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12610         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12611         },
12612         {
12613         .description = "tun_hdr_error",
12614         .field_bit_size = 1,
12615         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12616         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12617         },
12618         {
12619         .description = "tun_hdr_valid",
12620         .field_bit_size = 1,
12621         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12622         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12623         },
12624         {
12625         .description = "tl4_hdr_is_udp_tcp",
12626         .field_bit_size = 1,
12627         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12628         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12629         },
12630         {
12631         .description = "tl4_hdr_type",
12632         .field_bit_size = 4,
12633         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12634         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12635         },
12636         {
12637         .description = "tl4_hdr_error",
12638         .field_bit_size = 1,
12639         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12640         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12641         },
12642         {
12643         .description = "tl4_hdr_valid",
12644         .field_bit_size = 1,
12645         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12646         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12647         },
12648         {
12649         .description = "tl3_ipv6_cmp_dst",
12650         .field_bit_size = 1,
12651         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12652         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12653         },
12654         {
12655         .description = "tl3_ipv6_cmp_src",
12656         .field_bit_size = 1,
12657         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12658         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12659         },
12660         {
12661         .description = "tl3_hdr_isIP",
12662         .field_bit_size = 1,
12663         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12664         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12665         },
12666         {
12667         .description = "tl3_hdr_type",
12668         .field_bit_size = 4,
12669         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12670         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12671         },
12672         {
12673         .description = "tl3_hdr_error",
12674         .field_bit_size = 1,
12675         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12676         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12677         },
12678         {
12679         .description = "tl3_hdr_valid",
12680         .field_bit_size = 1,
12681         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12682         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12683         },
12684         {
12685         .description = "tl2_two_vtags",
12686         .field_bit_size = 1,
12687         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12688         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12689         },
12690         {
12691         .description = "tl2_vtag_present",
12692         .field_bit_size = 1,
12693         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12694         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12695         },
12696         {
12697         .description = "tl2_uc_mc_bc",
12698         .field_bit_size = 2,
12699         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12700         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12701         },
12702         {
12703         .description = "tl2_hdr_type",
12704         .field_bit_size = 2,
12705         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12706         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12707         },
12708         {
12709         .description = "tl2_hdr_valid",
12710         .field_bit_size = 1,
12711         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12712         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12713         },
12714         {
12715         .description = "hrec_next",
12716         .field_bit_size = 1,
12717         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12718         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12719         },
12720         {
12721         .description = "reserved",
12722         .field_bit_size = 9,
12723         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12724         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12725         },
12726         {
12727         .description = "prof_func_id",
12728         .field_bit_size = 7,
12729         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
12730         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
12731                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
12732         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
12733         .spec_operand = {
12734                 (BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID >> 8) & 0xff,
12735                 BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID & 0xff,
12736                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
12737                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
12738         },
12739         {
12740         .description = "agg_error",
12741         .field_bit_size = 1,
12742         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12743         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12744         },
12745         {
12746         .description = "recycle_cnt",
12747         .field_bit_size = 2,
12748         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
12749         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
12750                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
12751         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12752         },
12753         {
12754         .description = "pkt_type_0",
12755         .field_bit_size = 2,
12756         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12757         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12758         },
12759         {
12760         .description = "pkt_type_1",
12761         .field_bit_size = 2,
12762         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
12763         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
12764                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
12765         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12766         },
12767         {
12768         .description = "valid",
12769         .field_bit_size = 1,
12770         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
12771         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
12772                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
12773         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
12774         .spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
12775                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
12776         },
12777         /* class_tid: 20, wh_plus, table: ext_em_0 */
12778         {
12779         .description = "spare",
12780         .field_bit_size = 251,
12781         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12782         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12783         },
12784         {
12785         .description = "local_cos",
12786         .field_bit_size = 3,
12787         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12788         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12789         },
12790         {
12791         .description = "l4_dst_port",
12792         .field_bit_size = 16,
12793         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12794         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
12795         .spec_operand = {
12796                 (BNXT_ULP_HF20_IDX_O_UDP_DST_PORT >> 8) & 0xff,
12797                 BNXT_ULP_HF20_IDX_O_UDP_DST_PORT & 0xff,
12798                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
12799                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
12800         },
12801         {
12802         .description = "l4_src_port",
12803         .field_bit_size = 16,
12804         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12805         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
12806         .spec_operand = {
12807                 (BNXT_ULP_HF20_IDX_O_UDP_SRC_PORT >> 8) & 0xff,
12808                 BNXT_ULP_HF20_IDX_O_UDP_SRC_PORT & 0xff,
12809                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
12810                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
12811         },
12812         {
12813         .description = "ip_proto",
12814         .field_bit_size = 8,
12815         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12816         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
12817         .spec_operand = {
12818                 BNXT_ULP_SYM_IP_PROTO_UDP,
12819                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
12820                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
12821         },
12822         {
12823         .description = "ipv4_dst_addr",
12824         .field_bit_size = 32,
12825         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12826         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
12827         .spec_operand = {
12828                 (BNXT_ULP_HF20_IDX_O_IPV4_DST_ADDR >> 8) & 0xff,
12829                 BNXT_ULP_HF20_IDX_O_IPV4_DST_ADDR & 0xff,
12830                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
12831                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
12832         },
12833         {
12834         .description = "ipv4_src_addr",
12835         .field_bit_size = 32,
12836         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12837         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
12838         .spec_operand = {
12839                 (BNXT_ULP_HF20_IDX_O_IPV4_SRC_ADDR >> 8) & 0xff,
12840                 BNXT_ULP_HF20_IDX_O_IPV4_SRC_ADDR & 0xff,
12841                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
12842                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
12843         },
12844         {
12845         .description = "l2_src_mac",
12846         .field_bit_size = 48,
12847         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12848         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12849         },
12850         {
12851         .description = "tun_id",
12852         .field_bit_size = 24,
12853         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12854         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12855         },
12856         {
12857         .description = "l2_cntxt_id",
12858         .field_bit_size = 10,
12859         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12860         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
12861         .spec_operand = {
12862                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
12863                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
12864                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
12865                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
12866         },
12867         {
12868         .description = "em_profile_id",
12869         .field_bit_size = 8,
12870         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12871         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
12872         .spec_operand = {
12873                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
12874                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
12875                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
12876                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
12877         },
12878         /* class_tid: 20, wh_plus, table: int_em_0 */
12879         {
12880         .description = "spare",
12881         .field_bit_size = 3,
12882         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12883         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12884         },
12885         {
12886         .description = "local_cos",
12887         .field_bit_size = 3,
12888         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12889         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12890         },
12891         {
12892         .description = "l4_dst_port",
12893         .field_bit_size = 16,
12894         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12895         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
12896         .spec_operand = {
12897                 (BNXT_ULP_HF20_IDX_O_UDP_DST_PORT >> 8) & 0xff,
12898                 BNXT_ULP_HF20_IDX_O_UDP_DST_PORT & 0xff,
12899                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
12900                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
12901         },
12902         {
12903         .description = "l4_src_port",
12904         .field_bit_size = 16,
12905         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12906         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
12907         .spec_operand = {
12908                 (BNXT_ULP_HF20_IDX_O_UDP_SRC_PORT >> 8) & 0xff,
12909                 BNXT_ULP_HF20_IDX_O_UDP_SRC_PORT & 0xff,
12910                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
12911                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
12912         },
12913         {
12914         .description = "ip_proto",
12915         .field_bit_size = 8,
12916         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12917         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
12918         .spec_operand = {
12919                 BNXT_ULP_SYM_IP_PROTO_UDP,
12920                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
12921                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
12922         },
12923         {
12924         .description = "ipv4_dst_addr",
12925         .field_bit_size = 32,
12926         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12927         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
12928         .spec_operand = {
12929                 (BNXT_ULP_HF20_IDX_O_IPV4_DST_ADDR >> 8) & 0xff,
12930                 BNXT_ULP_HF20_IDX_O_IPV4_DST_ADDR & 0xff,
12931                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
12932                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
12933         },
12934         {
12935         .description = "ipv4_src_addr",
12936         .field_bit_size = 32,
12937         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12938         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
12939         .spec_operand = {
12940                 (BNXT_ULP_HF20_IDX_O_IPV4_SRC_ADDR >> 8) & 0xff,
12941                 BNXT_ULP_HF20_IDX_O_IPV4_SRC_ADDR & 0xff,
12942                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
12943                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
12944         },
12945         {
12946         .description = "l2_src_mac",
12947         .field_bit_size = 48,
12948         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12949         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12950         },
12951         {
12952         .description = "tun_id",
12953         .field_bit_size = 24,
12954         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12955         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12956         },
12957         {
12958         .description = "l2_cntxt_id",
12959         .field_bit_size = 10,
12960         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12961         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
12962         .spec_operand = {
12963                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
12964                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
12965                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
12966                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
12967         },
12968         {
12969         .description = "em_profile_id",
12970         .field_bit_size = 8,
12971         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12972         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
12973         .spec_operand = {
12974                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
12975                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
12976                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
12977                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
12978         },
12979         /* class_tid: 21, wh_plus, table: l2_cntxt_cache_0 */
12980         {
12981         .description = "svif",
12982         .field_bit_size = 8,
12983         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12984         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
12985         .spec_operand = {
12986                 (BNXT_ULP_HF21_IDX_SVIF_INDEX >> 8) & 0xff,
12987                 BNXT_ULP_HF21_IDX_SVIF_INDEX & 0xff,
12988                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
12989                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
12990         },
12991         /* class_tid: 21, wh_plus, table: l2_cntxt_tcam_0 */
12992         {
12993         .description = "l2_ivlan_vid",
12994         .field_bit_size = 12,
12995         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12996         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12997         },
12998         {
12999         .description = "l2_ovlan_vid",
13000         .field_bit_size = 12,
13001         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13002         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13003         },
13004         {
13005         .description = "mac0_l2_dst",
13006         .field_bit_size = 48,
13007         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13008         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13009         },
13010         {
13011         .description = "svif",
13012         .field_bit_size = 8,
13013         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
13014         .mask_operand = {
13015                 (BNXT_ULP_HF21_IDX_SVIF_INDEX >> 8) & 0xff,
13016                 BNXT_ULP_HF21_IDX_SVIF_INDEX & 0xff,
13017                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
13018                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
13019         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
13020         .spec_operand = {
13021                 (BNXT_ULP_HF21_IDX_SVIF_INDEX >> 8) & 0xff,
13022                 BNXT_ULP_HF21_IDX_SVIF_INDEX & 0xff,
13023                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
13024                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
13025         },
13026         {
13027         .description = "sparif",
13028         .field_bit_size = 4,
13029         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13030         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13031         },
13032         {
13033         .description = "tl2_ivlan_vid",
13034         .field_bit_size = 12,
13035         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13036         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13037         },
13038         {
13039         .description = "tl2_ovlan_vid",
13040         .field_bit_size = 12,
13041         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13042         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13043         },
13044         {
13045         .description = "mac1_tl2_dst",
13046         .field_bit_size = 48,
13047         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13048         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13049         },
13050         {
13051         .description = "l2_num_vtags",
13052         .field_bit_size = 2,
13053         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13054         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13055         },
13056         {
13057         .description = "tl2_num_vtags",
13058         .field_bit_size = 2,
13059         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13060         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13061         },
13062         {
13063         .description = "tun_hdr_type",
13064         .field_bit_size = 4,
13065         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
13066         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
13067                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
13068         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
13069         .spec_operand = {
13070                 BNXT_ULP_SYM_TUN_HDR_TYPE_NONE,
13071                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
13072                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
13073         },
13074         {
13075         .description = "key_type",
13076         .field_bit_size = 2,
13077         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13078         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13079         },
13080         {
13081         .description = "valid",
13082         .field_bit_size = 1,
13083         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
13084         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
13085                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
13086         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
13087         .spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
13088                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
13089         },
13090         /* class_tid: 21, wh_plus, table: profile_tcam_cache_0 */
13091         {
13092         .description = "recycle",
13093         .field_bit_size = 1,
13094         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13095         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13096         },
13097         {
13098         .description = "prof_func_id",
13099         .field_bit_size = 7,
13100         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13101         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
13102         .spec_operand = {
13103                 (BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID >> 8) & 0xff,
13104                 BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID & 0xff,
13105                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
13106                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
13107         },
13108         {
13109         .description = "class_tid",
13110         .field_bit_size = 8,
13111         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13112         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
13113         .spec_operand = {
13114                 (BNXT_ULP_REGFILE_INDEX_CLASS_TID >> 8) & 0xff,
13115                 BNXT_ULP_REGFILE_INDEX_CLASS_TID & 0xff,
13116                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
13117                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
13118         },
13119         /* class_tid: 21, wh_plus, table: profile_tcam_0 */
13120         {
13121         .description = "l4_hdr_is_udp_tcp",
13122         .field_bit_size = 1,
13123         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13124         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13125         },
13126         {
13127         .description = "l4_hdr_type",
13128         .field_bit_size = 4,
13129         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
13130         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
13131                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
13132         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13133         },
13134         {
13135         .description = "l4_hdr_error",
13136         .field_bit_size = 1,
13137         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
13138         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
13139                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
13140         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13141         },
13142         {
13143         .description = "l4_hdr_valid",
13144         .field_bit_size = 1,
13145         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
13146         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
13147                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
13148         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
13149         .spec_operand = {
13150                 BNXT_ULP_SYM_L4_HDR_VALID_YES,
13151                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
13152                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
13153         },
13154         {
13155         .description = "l3_ipv6_cmp_dst",
13156         .field_bit_size = 1,
13157         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13158         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13159         },
13160         {
13161         .description = "l3_ipv6_cmp_src",
13162         .field_bit_size = 1,
13163         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13164         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13165         },
13166         {
13167         .description = "l3_hdr_isIP",
13168         .field_bit_size = 1,
13169         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13170         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13171         },
13172         {
13173         .description = "l3_hdr_type",
13174         .field_bit_size = 4,
13175         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
13176         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
13177                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
13178         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13179         },
13180         {
13181         .description = "l3_hdr_error",
13182         .field_bit_size = 1,
13183         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
13184         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
13185                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
13186         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13187         },
13188         {
13189         .description = "l3_hdr_valid",
13190         .field_bit_size = 1,
13191         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
13192         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
13193                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
13194         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
13195         .spec_operand = {
13196                 BNXT_ULP_SYM_L3_HDR_VALID_YES,
13197                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
13198                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
13199         },
13200         {
13201         .description = "l2_two_vtags",
13202         .field_bit_size = 1,
13203         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13204         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13205         },
13206         {
13207         .description = "l2_vtag_present",
13208         .field_bit_size = 1,
13209         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13210         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13211         },
13212         {
13213         .description = "l2_uc_mc_bc",
13214         .field_bit_size = 2,
13215         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13216         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13217         },
13218         {
13219         .description = "l2_hdr_type",
13220         .field_bit_size = 2,
13221         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
13222         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
13223                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
13224         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13225         },
13226         {
13227         .description = "l2_hdr_error",
13228         .field_bit_size = 1,
13229         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
13230         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
13231                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
13232         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13233         },
13234         {
13235         .description = "l2_hdr_valid",
13236         .field_bit_size = 1,
13237         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
13238         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
13239                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
13240         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
13241         .spec_operand = {
13242                 BNXT_ULP_SYM_L2_HDR_VALID_YES,
13243                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
13244                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
13245         },
13246         {
13247         .description = "tun_hdr_flags",
13248         .field_bit_size = 3,
13249         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13250         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13251         },
13252         {
13253         .description = "tun_hdr_type",
13254         .field_bit_size = 4,
13255         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13256         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13257         },
13258         {
13259         .description = "tun_hdr_error",
13260         .field_bit_size = 1,
13261         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13262         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13263         },
13264         {
13265         .description = "tun_hdr_valid",
13266         .field_bit_size = 1,
13267         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13268         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13269         },
13270         {
13271         .description = "tl4_hdr_is_udp_tcp",
13272         .field_bit_size = 1,
13273         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13274         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13275         },
13276         {
13277         .description = "tl4_hdr_type",
13278         .field_bit_size = 4,
13279         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13280         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13281         },
13282         {
13283         .description = "tl4_hdr_error",
13284         .field_bit_size = 1,
13285         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13286         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13287         },
13288         {
13289         .description = "tl4_hdr_valid",
13290         .field_bit_size = 1,
13291         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13292         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13293         },
13294         {
13295         .description = "tl3_ipv6_cmp_dst",
13296         .field_bit_size = 1,
13297         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13298         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13299         },
13300         {
13301         .description = "tl3_ipv6_cmp_src",
13302         .field_bit_size = 1,
13303         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13304         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13305         },
13306         {
13307         .description = "tl3_hdr_isIP",
13308         .field_bit_size = 1,
13309         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13310         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13311         },
13312         {
13313         .description = "tl3_hdr_type",
13314         .field_bit_size = 4,
13315         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13316         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13317         },
13318         {
13319         .description = "tl3_hdr_error",
13320         .field_bit_size = 1,
13321         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13322         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13323         },
13324         {
13325         .description = "tl3_hdr_valid",
13326         .field_bit_size = 1,
13327         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13328         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13329         },
13330         {
13331         .description = "tl2_two_vtags",
13332         .field_bit_size = 1,
13333         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13334         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13335         },
13336         {
13337         .description = "tl2_vtag_present",
13338         .field_bit_size = 1,
13339         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13340         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13341         },
13342         {
13343         .description = "tl2_uc_mc_bc",
13344         .field_bit_size = 2,
13345         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13346         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13347         },
13348         {
13349         .description = "tl2_hdr_type",
13350         .field_bit_size = 2,
13351         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13352         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13353         },
13354         {
13355         .description = "tl2_hdr_valid",
13356         .field_bit_size = 1,
13357         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13358         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13359         },
13360         {
13361         .description = "hrec_next",
13362         .field_bit_size = 1,
13363         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13364         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13365         },
13366         {
13367         .description = "reserved",
13368         .field_bit_size = 9,
13369         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13370         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13371         },
13372         {
13373         .description = "prof_func_id",
13374         .field_bit_size = 7,
13375         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
13376         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
13377                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
13378         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
13379         .spec_operand = {
13380                 (BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID >> 8) & 0xff,
13381                 BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID & 0xff,
13382                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
13383                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
13384         },
13385         {
13386         .description = "agg_error",
13387         .field_bit_size = 1,
13388         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13389         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13390         },
13391         {
13392         .description = "recycle_cnt",
13393         .field_bit_size = 2,
13394         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
13395         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
13396                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
13397         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13398         },
13399         {
13400         .description = "pkt_type_0",
13401         .field_bit_size = 2,
13402         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13403         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13404         },
13405         {
13406         .description = "pkt_type_1",
13407         .field_bit_size = 2,
13408         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
13409         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
13410                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
13411         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13412         },
13413         {
13414         .description = "valid",
13415         .field_bit_size = 1,
13416         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
13417         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
13418                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
13419         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
13420         .spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
13421                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
13422         },
13423         /* class_tid: 21, wh_plus, table: ext_em_0 */
13424         {
13425         .description = "spare",
13426         .field_bit_size = 251,
13427         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13428         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13429         },
13430         {
13431         .description = "local_cos",
13432         .field_bit_size = 3,
13433         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13434         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13435         },
13436         {
13437         .description = "l4_dst_port",
13438         .field_bit_size = 16,
13439         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13440         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
13441         .spec_operand = {
13442                 (BNXT_ULP_HF21_IDX_O_TCP_DST_PORT >> 8) & 0xff,
13443                 BNXT_ULP_HF21_IDX_O_TCP_DST_PORT & 0xff,
13444                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
13445                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
13446         },
13447         {
13448         .description = "l4_src_port",
13449         .field_bit_size = 16,
13450         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13451         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
13452         .spec_operand = {
13453                 (BNXT_ULP_HF21_IDX_O_TCP_SRC_PORT >> 8) & 0xff,
13454                 BNXT_ULP_HF21_IDX_O_TCP_SRC_PORT & 0xff,
13455                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
13456                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
13457         },
13458         {
13459         .description = "ip_proto",
13460         .field_bit_size = 8,
13461         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13462         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
13463         .spec_operand = {
13464                 BNXT_ULP_SYM_IP_PROTO_TCP,
13465                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
13466                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
13467         },
13468         {
13469         .description = "ipv4_dst_addr",
13470         .field_bit_size = 32,
13471         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13472         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
13473         .spec_operand = {
13474                 (BNXT_ULP_HF21_IDX_O_IPV4_DST_ADDR >> 8) & 0xff,
13475                 BNXT_ULP_HF21_IDX_O_IPV4_DST_ADDR & 0xff,
13476                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
13477                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
13478         },
13479         {
13480         .description = "ipv4_src_addr",
13481         .field_bit_size = 32,
13482         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13483         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
13484         .spec_operand = {
13485                 (BNXT_ULP_HF21_IDX_O_IPV4_SRC_ADDR >> 8) & 0xff,
13486                 BNXT_ULP_HF21_IDX_O_IPV4_SRC_ADDR & 0xff,
13487                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
13488                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
13489         },
13490         {
13491         .description = "l2_src_mac",
13492         .field_bit_size = 48,
13493         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13494         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13495         },
13496         {
13497         .description = "tun_id",
13498         .field_bit_size = 24,
13499         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13500         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13501         },
13502         {
13503         .description = "l2_cntxt_id",
13504         .field_bit_size = 10,
13505         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13506         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
13507         .spec_operand = {
13508                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
13509                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
13510                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
13511                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
13512         },
13513         {
13514         .description = "em_profile_id",
13515         .field_bit_size = 8,
13516         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13517         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
13518         .spec_operand = {
13519                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
13520                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
13521                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
13522                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
13523         },
13524         /* class_tid: 21, wh_plus, table: int_em_0 */
13525         {
13526         .description = "spare",
13527         .field_bit_size = 3,
13528         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13529         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13530         },
13531         {
13532         .description = "local_cos",
13533         .field_bit_size = 3,
13534         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13535         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13536         },
13537         {
13538         .description = "l4_dst_port",
13539         .field_bit_size = 16,
13540         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13541         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
13542         .spec_operand = {
13543                 (BNXT_ULP_HF21_IDX_O_TCP_DST_PORT >> 8) & 0xff,
13544                 BNXT_ULP_HF21_IDX_O_TCP_DST_PORT & 0xff,
13545                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
13546                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
13547         },
13548         {
13549         .description = "l4_src_port",
13550         .field_bit_size = 16,
13551         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13552         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
13553         .spec_operand = {
13554                 (BNXT_ULP_HF21_IDX_O_TCP_SRC_PORT >> 8) & 0xff,
13555                 BNXT_ULP_HF21_IDX_O_TCP_SRC_PORT & 0xff,
13556                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
13557                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
13558         },
13559         {
13560         .description = "ip_proto",
13561         .field_bit_size = 8,
13562         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13563         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
13564         .spec_operand = {
13565                 BNXT_ULP_SYM_IP_PROTO_TCP,
13566                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
13567                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
13568         },
13569         {
13570         .description = "ipv4_dst_addr",
13571         .field_bit_size = 32,
13572         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13573         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
13574         .spec_operand = {
13575                 (BNXT_ULP_HF21_IDX_O_IPV4_DST_ADDR >> 8) & 0xff,
13576                 BNXT_ULP_HF21_IDX_O_IPV4_DST_ADDR & 0xff,
13577                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
13578                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
13579         },
13580         {
13581         .description = "ipv4_src_addr",
13582         .field_bit_size = 32,
13583         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13584         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
13585         .spec_operand = {
13586                 (BNXT_ULP_HF21_IDX_O_IPV4_SRC_ADDR >> 8) & 0xff,
13587                 BNXT_ULP_HF21_IDX_O_IPV4_SRC_ADDR & 0xff,
13588                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
13589                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
13590         },
13591         {
13592         .description = "l2_src_mac",
13593         .field_bit_size = 48,
13594         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13595         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13596         },
13597         {
13598         .description = "tun_id",
13599         .field_bit_size = 24,
13600         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13601         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13602         },
13603         {
13604         .description = "l2_cntxt_id",
13605         .field_bit_size = 10,
13606         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13607         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
13608         .spec_operand = {
13609                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
13610                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
13611                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
13612                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
13613         },
13614         {
13615         .description = "em_profile_id",
13616         .field_bit_size = 8,
13617         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13618         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
13619         .spec_operand = {
13620                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
13621                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
13622                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
13623                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
13624         },
13625         /* class_tid: 22, wh_plus, table: l2_cntxt_cache_0 */
13626         {
13627         .description = "svif",
13628         .field_bit_size = 8,
13629         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13630         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
13631         .spec_operand = {
13632                 (BNXT_ULP_HF22_IDX_SVIF_INDEX >> 8) & 0xff,
13633                 BNXT_ULP_HF22_IDX_SVIF_INDEX & 0xff,
13634                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
13635                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
13636         },
13637         /* class_tid: 22, wh_plus, table: l2_cntxt_0 */
13638         {
13639         .description = "l2_ivlan_vid",
13640         .field_bit_size = 12,
13641         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13642         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13643         },
13644         {
13645         .description = "l2_ovlan_vid",
13646         .field_bit_size = 12,
13647         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13648         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13649         },
13650         {
13651         .description = "mac0_l2_dst",
13652         .field_bit_size = 48,
13653         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13654         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13655         },
13656         {
13657         .description = "svif",
13658         .field_bit_size = 8,
13659         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
13660         .mask_operand = {
13661                 (BNXT_ULP_HF22_IDX_SVIF_INDEX >> 8) & 0xff,
13662                 BNXT_ULP_HF22_IDX_SVIF_INDEX & 0xff,
13663                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
13664                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
13665         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
13666         .spec_operand = {
13667                 (BNXT_ULP_HF22_IDX_SVIF_INDEX >> 8) & 0xff,
13668                 BNXT_ULP_HF22_IDX_SVIF_INDEX & 0xff,
13669                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
13670                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
13671         },
13672         {
13673         .description = "sparif",
13674         .field_bit_size = 4,
13675         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13676         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13677         },
13678         {
13679         .description = "tl2_ivlan_vid",
13680         .field_bit_size = 12,
13681         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13682         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13683         },
13684         {
13685         .description = "tl2_ovlan_vid",
13686         .field_bit_size = 12,
13687         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13688         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13689         },
13690         {
13691         .description = "mac1_tl2_dst",
13692         .field_bit_size = 48,
13693         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13694         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13695         },
13696         {
13697         .description = "l2_num_vtags",
13698         .field_bit_size = 2,
13699         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13700         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13701         },
13702         {
13703         .description = "tl2_num_vtags",
13704         .field_bit_size = 2,
13705         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13706         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13707         },
13708         {
13709         .description = "tun_hdr_type",
13710         .field_bit_size = 4,
13711         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
13712         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
13713                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
13714         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
13715         .spec_operand = {
13716                 BNXT_ULP_SYM_TUN_HDR_TYPE_NONE,
13717                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
13718                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
13719         },
13720         {
13721         .description = "key_type",
13722         .field_bit_size = 2,
13723         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13724         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13725         },
13726         {
13727         .description = "valid",
13728         .field_bit_size = 1,
13729         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
13730         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
13731                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
13732         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
13733         .spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
13734                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
13735         },
13736         /* class_tid: 22, wh_plus, table: profile_tcam_cache_0 */
13737         {
13738         .description = "recycle",
13739         .field_bit_size = 1,
13740         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13741         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13742         },
13743         {
13744         .description = "prof_func_id",
13745         .field_bit_size = 7,
13746         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13747         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
13748         .spec_operand = {
13749                 (BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID >> 8) & 0xff,
13750                 BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID & 0xff,
13751                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
13752                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
13753         },
13754         {
13755         .description = "class_tid",
13756         .field_bit_size = 8,
13757         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13758         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
13759         .spec_operand = {
13760                 (BNXT_ULP_REGFILE_INDEX_CLASS_TID >> 8) & 0xff,
13761                 BNXT_ULP_REGFILE_INDEX_CLASS_TID & 0xff,
13762                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
13763                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
13764         },
13765         /* class_tid: 22, wh_plus, table: profile_tcam_0 */
13766         {
13767         .description = "l4_hdr_is_udp_tcp",
13768         .field_bit_size = 1,
13769         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13770         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13771         },
13772         {
13773         .description = "l4_hdr_type",
13774         .field_bit_size = 4,
13775         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
13776         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
13777                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
13778         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
13779         .spec_operand = {
13780                 BNXT_ULP_SYM_L4_HDR_TYPE_UDP,
13781                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
13782                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
13783         },
13784         {
13785         .description = "l4_hdr_error",
13786         .field_bit_size = 1,
13787         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
13788         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
13789                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
13790         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13791         },
13792         {
13793         .description = "l4_hdr_valid",
13794         .field_bit_size = 1,
13795         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
13796         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
13797                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
13798         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
13799         .spec_operand = {
13800                 BNXT_ULP_SYM_L4_HDR_VALID_YES,
13801                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
13802                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
13803         },
13804         {
13805         .description = "l3_ipv6_cmp_dst",
13806         .field_bit_size = 1,
13807         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13808         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13809         },
13810         {
13811         .description = "l3_ipv6_cmp_src",
13812         .field_bit_size = 1,
13813         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13814         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13815         },
13816         {
13817         .description = "l3_hdr_isIP",
13818         .field_bit_size = 1,
13819         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13820         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13821         },
13822         {
13823         .description = "l3_hdr_type",
13824         .field_bit_size = 4,
13825         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
13826         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
13827                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
13828         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
13829         .spec_operand = {
13830                 BNXT_ULP_SYM_L3_HDR_TYPE_IPV6,
13831                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
13832                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
13833         },
13834         {
13835         .description = "l3_hdr_error",
13836         .field_bit_size = 1,
13837         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
13838         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
13839                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
13840         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13841         },
13842         {
13843         .description = "l3_hdr_valid",
13844         .field_bit_size = 1,
13845         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
13846         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
13847                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
13848         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
13849         .spec_operand = {
13850                 BNXT_ULP_SYM_L3_HDR_VALID_YES,
13851                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
13852                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
13853         },
13854         {
13855         .description = "l2_two_vtags",
13856         .field_bit_size = 1,
13857         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13858         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13859         },
13860         {
13861         .description = "l2_vtag_present",
13862         .field_bit_size = 1,
13863         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13864         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13865         },
13866         {
13867         .description = "l2_uc_mc_bc",
13868         .field_bit_size = 2,
13869         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13870         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13871         },
13872         {
13873         .description = "l2_hdr_type",
13874         .field_bit_size = 2,
13875         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
13876         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
13877                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
13878         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13879         },
13880         {
13881         .description = "l2_hdr_error",
13882         .field_bit_size = 1,
13883         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
13884         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
13885                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
13886         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13887         },
13888         {
13889         .description = "l2_hdr_valid",
13890         .field_bit_size = 1,
13891         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
13892         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
13893                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
13894         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
13895         .spec_operand = {
13896                 BNXT_ULP_SYM_L2_HDR_VALID_YES,
13897                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
13898                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
13899         },
13900         {
13901         .description = "tun_hdr_flags",
13902         .field_bit_size = 3,
13903         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13904         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13905         },
13906         {
13907         .description = "tun_hdr_type",
13908         .field_bit_size = 4,
13909         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13910         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13911         },
13912         {
13913         .description = "tun_hdr_error",
13914         .field_bit_size = 1,
13915         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13916         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13917         },
13918         {
13919         .description = "tun_hdr_valid",
13920         .field_bit_size = 1,
13921         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13922         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13923         },
13924         {
13925         .description = "tl4_hdr_is_udp_tcp",
13926         .field_bit_size = 1,
13927         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13928         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13929         },
13930         {
13931         .description = "tl4_hdr_type",
13932         .field_bit_size = 4,
13933         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13934         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13935         },
13936         {
13937         .description = "tl4_hdr_error",
13938         .field_bit_size = 1,
13939         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13940         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13941         },
13942         {
13943         .description = "tl4_hdr_valid",
13944         .field_bit_size = 1,
13945         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13946         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13947         },
13948         {
13949         .description = "tl3_ipv6_cmp_dst",
13950         .field_bit_size = 1,
13951         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13952         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13953         },
13954         {
13955         .description = "tl3_ipv6_cmp_src",
13956         .field_bit_size = 1,
13957         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13958         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13959         },
13960         {
13961         .description = "tl3_hdr_isIP",
13962         .field_bit_size = 1,
13963         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13964         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13965         },
13966         {
13967         .description = "tl3_hdr_type",
13968         .field_bit_size = 4,
13969         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13970         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13971         },
13972         {
13973         .description = "tl3_hdr_error",
13974         .field_bit_size = 1,
13975         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13976         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13977         },
13978         {
13979         .description = "tl3_hdr_valid",
13980         .field_bit_size = 1,
13981         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13982         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13983         },
13984         {
13985         .description = "tl2_two_vtags",
13986         .field_bit_size = 1,
13987         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13988         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13989         },
13990         {
13991         .description = "tl2_vtag_present",
13992         .field_bit_size = 1,
13993         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13994         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13995         },
13996         {
13997         .description = "tl2_uc_mc_bc",
13998         .field_bit_size = 2,
13999         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14000         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14001         },
14002         {
14003         .description = "tl2_hdr_type",
14004         .field_bit_size = 2,
14005         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14006         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14007         },
14008         {
14009         .description = "tl2_hdr_valid",
14010         .field_bit_size = 1,
14011         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14012         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14013         },
14014         {
14015         .description = "hrec_next",
14016         .field_bit_size = 1,
14017         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14018         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14019         },
14020         {
14021         .description = "reserved",
14022         .field_bit_size = 9,
14023         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14024         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14025         },
14026         {
14027         .description = "prof_func_id",
14028         .field_bit_size = 7,
14029         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
14030         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
14031                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
14032         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
14033         .spec_operand = {
14034                 (BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID >> 8) & 0xff,
14035                 BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID & 0xff,
14036                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
14037                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
14038         },
14039         {
14040         .description = "agg_error",
14041         .field_bit_size = 1,
14042         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14043         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14044         },
14045         {
14046         .description = "recycle_cnt",
14047         .field_bit_size = 2,
14048         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
14049         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
14050                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
14051         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14052         },
14053         {
14054         .description = "pkt_type_0",
14055         .field_bit_size = 2,
14056         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14057         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14058         },
14059         {
14060         .description = "pkt_type_1",
14061         .field_bit_size = 2,
14062         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
14063         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
14064                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
14065         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14066         },
14067         {
14068         .description = "valid",
14069         .field_bit_size = 1,
14070         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
14071         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
14072                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
14073         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
14074         .spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
14075                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
14076         },
14077         /* class_tid: 22, wh_plus, table: ext_em_0 */
14078         {
14079         .description = "spare",
14080         .field_bit_size = 59,
14081         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14082         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14083         },
14084         {
14085         .description = "local_cos",
14086         .field_bit_size = 3,
14087         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14088         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14089         },
14090         {
14091         .description = "l4_dst_port",
14092         .field_bit_size = 16,
14093         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14094         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
14095         .spec_operand = {
14096                 (BNXT_ULP_HF22_IDX_O_UDP_DST_PORT >> 8) & 0xff,
14097                 BNXT_ULP_HF22_IDX_O_UDP_DST_PORT & 0xff,
14098                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
14099                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
14100         },
14101         {
14102         .description = "l4_src_port",
14103         .field_bit_size = 16,
14104         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14105         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
14106         .spec_operand = {
14107                 (BNXT_ULP_HF22_IDX_O_UDP_SRC_PORT >> 8) & 0xff,
14108                 BNXT_ULP_HF22_IDX_O_UDP_SRC_PORT & 0xff,
14109                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
14110                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
14111         },
14112         {
14113         .description = "ip_proto",
14114         .field_bit_size = 8,
14115         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14116         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
14117         .spec_operand = {
14118                 BNXT_ULP_SYM_IP_PROTO_UDP,
14119                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
14120                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
14121         },
14122         {
14123         .description = "ipv6_dst_addr",
14124         .field_bit_size = 128,
14125         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14126         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
14127         .spec_operand = {
14128                 (BNXT_ULP_HF22_IDX_O_IPV6_DST_ADDR >> 8) & 0xff,
14129                 BNXT_ULP_HF22_IDX_O_IPV6_DST_ADDR & 0xff,
14130                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
14131                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
14132         },
14133         {
14134         .description = "ipv6_src_addr",
14135         .field_bit_size = 128,
14136         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14137         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
14138         .spec_operand = {
14139                 (BNXT_ULP_HF22_IDX_O_IPV6_SRC_ADDR >> 8) & 0xff,
14140                 BNXT_ULP_HF22_IDX_O_IPV6_SRC_ADDR & 0xff,
14141                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
14142                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
14143         },
14144         {
14145         .description = "l2_src_mac",
14146         .field_bit_size = 48,
14147         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14148         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14149         },
14150         {
14151         .description = "tun_id",
14152         .field_bit_size = 24,
14153         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14154         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14155         },
14156         {
14157         .description = "l2_cntxt_id",
14158         .field_bit_size = 10,
14159         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14160         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
14161         .spec_operand = {
14162                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
14163                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
14164                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
14165                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
14166         },
14167         {
14168         .description = "em_profile_id",
14169         .field_bit_size = 8,
14170         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14171         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
14172         .spec_operand = {
14173                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
14174                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
14175                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
14176                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
14177         },
14178         /* class_tid: 22, wh_plus, table: int_em_0 */
14179         {
14180         .description = "spare",
14181         .field_bit_size = 3,
14182         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14183         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14184         },
14185         {
14186         .description = "local_cos",
14187         .field_bit_size = 3,
14188         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14189         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14190         },
14191         {
14192         .description = "l4_dst_port",
14193         .field_bit_size = 16,
14194         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14195         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
14196         .spec_operand = {
14197                 (BNXT_ULP_HF22_IDX_O_UDP_DST_PORT >> 8) & 0xff,
14198                 BNXT_ULP_HF22_IDX_O_UDP_DST_PORT & 0xff,
14199                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
14200                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
14201         },
14202         {
14203         .description = "l4_src_port",
14204         .field_bit_size = 16,
14205         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14206         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
14207         .spec_operand = {
14208                 (BNXT_ULP_HF22_IDX_O_UDP_SRC_PORT >> 8) & 0xff,
14209                 BNXT_ULP_HF22_IDX_O_UDP_SRC_PORT & 0xff,
14210                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
14211                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
14212         },
14213         {
14214         .description = "ip_proto",
14215         .field_bit_size = 8,
14216         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14217         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
14218         .spec_operand = {
14219                 BNXT_ULP_SYM_IP_PROTO_UDP,
14220                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
14221                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
14222         },
14223         {
14224         .description = "ipv6_dst_addr",
14225         .field_bit_size = 128,
14226         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14227         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
14228         .spec_operand = {
14229                 (BNXT_ULP_HF22_IDX_O_IPV6_DST_ADDR >> 8) & 0xff,
14230                 BNXT_ULP_HF22_IDX_O_IPV6_DST_ADDR & 0xff,
14231                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
14232                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
14233         },
14234         {
14235         .description = "ipv6_src_addr",
14236         .field_bit_size = 128,
14237         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14238         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
14239         .spec_operand = {
14240                 (BNXT_ULP_HF22_IDX_O_IPV6_SRC_ADDR >> 8) & 0xff,
14241                 BNXT_ULP_HF22_IDX_O_IPV6_SRC_ADDR & 0xff,
14242                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
14243                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
14244         },
14245         {
14246         .description = "l2_src_mac",
14247         .field_bit_size = 48,
14248         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14249         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14250         },
14251         {
14252         .description = "tun_id",
14253         .field_bit_size = 24,
14254         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14255         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14256         },
14257         {
14258         .description = "l2_cntxt_id",
14259         .field_bit_size = 10,
14260         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14261         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
14262         .spec_operand = {
14263                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
14264                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
14265                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
14266                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
14267         },
14268         {
14269         .description = "em_profile_id",
14270         .field_bit_size = 8,
14271         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14272         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
14273         .spec_operand = {
14274                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
14275                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
14276                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
14277                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
14278         },
14279         /* class_tid: 23, wh_plus, table: l2_cntxt_cache_0 */
14280         {
14281         .description = "svif",
14282         .field_bit_size = 8,
14283         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14284         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
14285         .spec_operand = {
14286                 (BNXT_ULP_HF23_IDX_SVIF_INDEX >> 8) & 0xff,
14287                 BNXT_ULP_HF23_IDX_SVIF_INDEX & 0xff,
14288                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
14289                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
14290         },
14291         /* class_tid: 23, wh_plus, table: l2_cntxt_tcam_0 */
14292         {
14293         .description = "l2_ivlan_vid",
14294         .field_bit_size = 12,
14295         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14296         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14297         },
14298         {
14299         .description = "l2_ovlan_vid",
14300         .field_bit_size = 12,
14301         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14302         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14303         },
14304         {
14305         .description = "mac0_l2_dst",
14306         .field_bit_size = 48,
14307         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14308         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14309         },
14310         {
14311         .description = "svif",
14312         .field_bit_size = 8,
14313         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
14314         .mask_operand = {
14315                 (BNXT_ULP_HF23_IDX_SVIF_INDEX >> 8) & 0xff,
14316                 BNXT_ULP_HF23_IDX_SVIF_INDEX & 0xff,
14317                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
14318                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
14319         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
14320         .spec_operand = {
14321                 (BNXT_ULP_HF23_IDX_SVIF_INDEX >> 8) & 0xff,
14322                 BNXT_ULP_HF23_IDX_SVIF_INDEX & 0xff,
14323                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
14324                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
14325         },
14326         {
14327         .description = "sparif",
14328         .field_bit_size = 4,
14329         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14330         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14331         },
14332         {
14333         .description = "tl2_ivlan_vid",
14334         .field_bit_size = 12,
14335         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14336         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14337         },
14338         {
14339         .description = "tl2_ovlan_vid",
14340         .field_bit_size = 12,
14341         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14342         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14343         },
14344         {
14345         .description = "mac1_tl2_dst",
14346         .field_bit_size = 48,
14347         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14348         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14349         },
14350         {
14351         .description = "l2_num_vtags",
14352         .field_bit_size = 2,
14353         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14354         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14355         },
14356         {
14357         .description = "tl2_num_vtags",
14358         .field_bit_size = 2,
14359         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14360         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14361         },
14362         {
14363         .description = "tun_hdr_type",
14364         .field_bit_size = 4,
14365         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
14366         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
14367                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
14368         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
14369         .spec_operand = {
14370                 BNXT_ULP_SYM_TUN_HDR_TYPE_NONE,
14371                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
14372                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
14373         },
14374         {
14375         .description = "key_type",
14376         .field_bit_size = 2,
14377         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14378         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14379         },
14380         {
14381         .description = "valid",
14382         .field_bit_size = 1,
14383         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
14384         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
14385                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
14386         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
14387         .spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
14388                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
14389         },
14390         /* class_tid: 23, wh_plus, table: profile_tcam_cache_0 */
14391         {
14392         .description = "recycle",
14393         .field_bit_size = 1,
14394         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14395         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14396         },
14397         {
14398         .description = "prof_func_id",
14399         .field_bit_size = 7,
14400         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14401         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
14402         .spec_operand = {
14403                 (BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID >> 8) & 0xff,
14404                 BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID & 0xff,
14405                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
14406                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
14407         },
14408         {
14409         .description = "class_tid",
14410         .field_bit_size = 8,
14411         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14412         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
14413         .spec_operand = {
14414                 (BNXT_ULP_REGFILE_INDEX_CLASS_TID >> 8) & 0xff,
14415                 BNXT_ULP_REGFILE_INDEX_CLASS_TID & 0xff,
14416                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
14417                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
14418         },
14419         /* class_tid: 23, wh_plus, table: profile_tcam_0 */
14420         {
14421         .description = "l4_hdr_is_udp_tcp",
14422         .field_bit_size = 1,
14423         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14424         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14425         },
14426         {
14427         .description = "l4_hdr_type",
14428         .field_bit_size = 4,
14429         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
14430         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
14431                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
14432         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14433         },
14434         {
14435         .description = "l4_hdr_error",
14436         .field_bit_size = 1,
14437         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
14438         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
14439                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
14440         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14441         },
14442         {
14443         .description = "l4_hdr_valid",
14444         .field_bit_size = 1,
14445         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
14446         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
14447                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
14448         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
14449         .spec_operand = {
14450                 BNXT_ULP_SYM_L4_HDR_VALID_YES,
14451                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
14452                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
14453         },
14454         {
14455         .description = "l3_ipv6_cmp_dst",
14456         .field_bit_size = 1,
14457         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14458         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14459         },
14460         {
14461         .description = "l3_ipv6_cmp_src",
14462         .field_bit_size = 1,
14463         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14464         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14465         },
14466         {
14467         .description = "l3_hdr_isIP",
14468         .field_bit_size = 1,
14469         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14470         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14471         },
14472         {
14473         .description = "l3_hdr_type",
14474         .field_bit_size = 4,
14475         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
14476         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
14477                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
14478         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
14479         .spec_operand = {
14480                 BNXT_ULP_SYM_L3_HDR_TYPE_IPV6,
14481                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
14482                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
14483         },
14484         {
14485         .description = "l3_hdr_error",
14486         .field_bit_size = 1,
14487         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
14488         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
14489                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
14490         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14491         },
14492         {
14493         .description = "l3_hdr_valid",
14494         .field_bit_size = 1,
14495         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
14496         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
14497                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
14498         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
14499         .spec_operand = {
14500                 BNXT_ULP_SYM_L3_HDR_VALID_YES,
14501                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
14502                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
14503         },
14504         {
14505         .description = "l2_two_vtags",
14506         .field_bit_size = 1,
14507         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14508         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14509         },
14510         {
14511         .description = "l2_vtag_present",
14512         .field_bit_size = 1,
14513         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14514         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14515         },
14516         {
14517         .description = "l2_uc_mc_bc",
14518         .field_bit_size = 2,
14519         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14520         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14521         },
14522         {
14523         .description = "l2_hdr_type",
14524         .field_bit_size = 2,
14525         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
14526         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
14527                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
14528         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14529         },
14530         {
14531         .description = "l2_hdr_error",
14532         .field_bit_size = 1,
14533         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
14534         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
14535                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
14536         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14537         },
14538         {
14539         .description = "l2_hdr_valid",
14540         .field_bit_size = 1,
14541         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
14542         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
14543                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
14544         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
14545         .spec_operand = {
14546                 BNXT_ULP_SYM_L2_HDR_VALID_YES,
14547                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
14548                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
14549         },
14550         {
14551         .description = "tun_hdr_flags",
14552         .field_bit_size = 3,
14553         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14554         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14555         },
14556         {
14557         .description = "tun_hdr_type",
14558         .field_bit_size = 4,
14559         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14560         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14561         },
14562         {
14563         .description = "tun_hdr_error",
14564         .field_bit_size = 1,
14565         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14566         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14567         },
14568         {
14569         .description = "tun_hdr_valid",
14570         .field_bit_size = 1,
14571         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14572         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14573         },
14574         {
14575         .description = "tl4_hdr_is_udp_tcp",
14576         .field_bit_size = 1,
14577         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14578         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14579         },
14580         {
14581         .description = "tl4_hdr_type",
14582         .field_bit_size = 4,
14583         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14584         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14585         },
14586         {
14587         .description = "tl4_hdr_error",
14588         .field_bit_size = 1,
14589         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14590         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14591         },
14592         {
14593         .description = "tl4_hdr_valid",
14594         .field_bit_size = 1,
14595         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14596         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14597         },
14598         {
14599         .description = "tl3_ipv6_cmp_dst",
14600         .field_bit_size = 1,
14601         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14602         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14603         },
14604         {
14605         .description = "tl3_ipv6_cmp_src",
14606         .field_bit_size = 1,
14607         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14608         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14609         },
14610         {
14611         .description = "tl3_hdr_isIP",
14612         .field_bit_size = 1,
14613         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14614         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14615         },
14616         {
14617         .description = "tl3_hdr_type",
14618         .field_bit_size = 4,
14619         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14620         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14621         },
14622         {
14623         .description = "tl3_hdr_error",
14624         .field_bit_size = 1,
14625         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14626         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14627         },
14628         {
14629         .description = "tl3_hdr_valid",
14630         .field_bit_size = 1,
14631         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14632         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14633         },
14634         {
14635         .description = "tl2_two_vtags",
14636         .field_bit_size = 1,
14637         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14638         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14639         },
14640         {
14641         .description = "tl2_vtag_present",
14642         .field_bit_size = 1,
14643         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14644         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14645         },
14646         {
14647         .description = "tl2_uc_mc_bc",
14648         .field_bit_size = 2,
14649         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14650         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14651         },
14652         {
14653         .description = "tl2_hdr_type",
14654         .field_bit_size = 2,
14655         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14656         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14657         },
14658         {
14659         .description = "tl2_hdr_valid",
14660         .field_bit_size = 1,
14661         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14662         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14663         },
14664         {
14665         .description = "hrec_next",
14666         .field_bit_size = 1,
14667         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14668         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14669         },
14670         {
14671         .description = "reserved",
14672         .field_bit_size = 9,
14673         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14674         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14675         },
14676         {
14677         .description = "prof_func_id",
14678         .field_bit_size = 7,
14679         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
14680         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
14681                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
14682         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
14683         .spec_operand = {
14684                 (BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID >> 8) & 0xff,
14685                 BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID & 0xff,
14686                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
14687                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
14688         },
14689         {
14690         .description = "agg_error",
14691         .field_bit_size = 1,
14692         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14693         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14694         },
14695         {
14696         .description = "recycle_cnt",
14697         .field_bit_size = 2,
14698         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
14699         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
14700                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
14701         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14702         },
14703         {
14704         .description = "pkt_type_0",
14705         .field_bit_size = 2,
14706         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14707         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14708         },
14709         {
14710         .description = "pkt_type_1",
14711         .field_bit_size = 2,
14712         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
14713         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
14714                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
14715         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14716         },
14717         {
14718         .description = "valid",
14719         .field_bit_size = 1,
14720         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
14721         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
14722                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
14723         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
14724         .spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
14725                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
14726         },
14727         /* class_tid: 23, wh_plus, table: ext_em_0 */
14728         {
14729         .description = "spare",
14730         .field_bit_size = 59,
14731         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14732         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14733         },
14734         {
14735         .description = "local_cos",
14736         .field_bit_size = 3,
14737         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14738         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14739         },
14740         {
14741         .description = "l4_dst_port",
14742         .field_bit_size = 16,
14743         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14744         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
14745         .spec_operand = {
14746                 (BNXT_ULP_HF23_IDX_O_TCP_DST_PORT >> 8) & 0xff,
14747                 BNXT_ULP_HF23_IDX_O_TCP_DST_PORT & 0xff,
14748                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
14749                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
14750         },
14751         {
14752         .description = "l4_src_port",
14753         .field_bit_size = 16,
14754         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14755         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
14756         .spec_operand = {
14757                 (BNXT_ULP_HF23_IDX_O_TCP_SRC_PORT >> 8) & 0xff,
14758                 BNXT_ULP_HF23_IDX_O_TCP_SRC_PORT & 0xff,
14759                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
14760                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
14761         },
14762         {
14763         .description = "ip_proto",
14764         .field_bit_size = 8,
14765         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14766         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
14767         .spec_operand = {
14768                 BNXT_ULP_SYM_IP_PROTO_TCP,
14769                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
14770                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
14771         },
14772         {
14773         .description = "ipv6_dst_addr",
14774         .field_bit_size = 128,
14775         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14776         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
14777         .spec_operand = {
14778                 (BNXT_ULP_HF23_IDX_O_IPV6_DST_ADDR >> 8) & 0xff,
14779                 BNXT_ULP_HF23_IDX_O_IPV6_DST_ADDR & 0xff,
14780                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
14781                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
14782         },
14783         {
14784         .description = "ipv6_src_addr",
14785         .field_bit_size = 128,
14786         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14787         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
14788         .spec_operand = {
14789                 (BNXT_ULP_HF23_IDX_O_IPV6_SRC_ADDR >> 8) & 0xff,
14790                 BNXT_ULP_HF23_IDX_O_IPV6_SRC_ADDR & 0xff,
14791                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
14792                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
14793         },
14794         {
14795         .description = "l2_src_mac",
14796         .field_bit_size = 48,
14797         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14798         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14799         },
14800         {
14801         .description = "tun_id",
14802         .field_bit_size = 24,
14803         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14804         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14805         },
14806         {
14807         .description = "l2_cntxt_id",
14808         .field_bit_size = 10,
14809         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14810         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
14811         .spec_operand = {
14812                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
14813                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
14814                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
14815                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
14816         },
14817         {
14818         .description = "em_profile_id",
14819         .field_bit_size = 8,
14820         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14821         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
14822         .spec_operand = {
14823                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
14824                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
14825                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
14826                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
14827         },
14828         /* class_tid: 23, wh_plus, table: int_em_0 */
14829         {
14830         .description = "spare",
14831         .field_bit_size = 3,
14832         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14833         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14834         },
14835         {
14836         .description = "local_cos",
14837         .field_bit_size = 3,
14838         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14839         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14840         },
14841         {
14842         .description = "l4_dst_port",
14843         .field_bit_size = 16,
14844         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14845         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
14846         .spec_operand = {
14847                 (BNXT_ULP_HF23_IDX_O_TCP_DST_PORT >> 8) & 0xff,
14848                 BNXT_ULP_HF23_IDX_O_TCP_DST_PORT & 0xff,
14849                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
14850                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
14851         },
14852         {
14853         .description = "l4_src_port",
14854         .field_bit_size = 16,
14855         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14856         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
14857         .spec_operand = {
14858                 (BNXT_ULP_HF23_IDX_O_TCP_SRC_PORT >> 8) & 0xff,
14859                 BNXT_ULP_HF23_IDX_O_TCP_SRC_PORT & 0xff,
14860                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
14861                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
14862         },
14863         {
14864         .description = "ip_proto",
14865         .field_bit_size = 8,
14866         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14867         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
14868         .spec_operand = {
14869                 BNXT_ULP_SYM_IP_PROTO_TCP,
14870                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
14871                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
14872         },
14873         {
14874         .description = "ipv6_dst_addr",
14875         .field_bit_size = 128,
14876         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14877         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
14878         .spec_operand = {
14879                 (BNXT_ULP_HF23_IDX_O_IPV6_DST_ADDR >> 8) & 0xff,
14880                 BNXT_ULP_HF23_IDX_O_IPV6_DST_ADDR & 0xff,
14881                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
14882                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
14883         },
14884         {
14885         .description = "ipv6_src_addr",
14886         .field_bit_size = 128,
14887         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14888         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
14889         .spec_operand = {
14890                 (BNXT_ULP_HF23_IDX_O_IPV6_SRC_ADDR >> 8) & 0xff,
14891                 BNXT_ULP_HF23_IDX_O_IPV6_SRC_ADDR & 0xff,
14892                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
14893                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
14894         },
14895         {
14896         .description = "l2_src_mac",
14897         .field_bit_size = 48,
14898         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14899         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14900         },
14901         {
14902         .description = "tun_id",
14903         .field_bit_size = 24,
14904         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14905         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14906         },
14907         {
14908         .description = "l2_cntxt_id",
14909         .field_bit_size = 10,
14910         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14911         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
14912         .spec_operand = {
14913                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
14914                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
14915                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
14916                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
14917         },
14918         {
14919         .description = "em_profile_id",
14920         .field_bit_size = 8,
14921         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14922         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
14923         .spec_operand = {
14924                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
14925                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
14926                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
14927                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
14928         },
14929         /* class_tid: 24, wh_plus, table: l2_cntxt_tcam_0 */
14930         {
14931         .description = "l2_ivlan_vid",
14932         .field_bit_size = 12,
14933         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
14934         .mask_operand = {
14935                 (BNXT_ULP_HF24_IDX_OO_VLAN_VID >> 8) & 0xff,
14936                 BNXT_ULP_HF24_IDX_OO_VLAN_VID & 0xff,
14937                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
14938                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
14939         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
14940         .spec_operand = {
14941                 (BNXT_ULP_HF24_IDX_OO_VLAN_VID >> 8) & 0xff,
14942                 BNXT_ULP_HF24_IDX_OO_VLAN_VID & 0xff,
14943                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
14944                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
14945         },
14946         {
14947         .description = "l2_ovlan_vid",
14948         .field_bit_size = 12,
14949         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14950         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14951         },
14952         {
14953         .description = "mac0_l2_addr",
14954         .field_bit_size = 48,
14955         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
14956         .mask_operand = {
14957                 (BNXT_ULP_HF24_IDX_O_ETH_SMAC >> 8) & 0xff,
14958                 BNXT_ULP_HF24_IDX_O_ETH_SMAC & 0xff,
14959                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
14960                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
14961         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
14962         .spec_operand = {
14963                 (BNXT_ULP_HF24_IDX_O_ETH_SMAC >> 8) & 0xff,
14964                 BNXT_ULP_HF24_IDX_O_ETH_SMAC & 0xff,
14965                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
14966                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
14967         },
14968         {
14969         .description = "svif",
14970         .field_bit_size = 8,
14971         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
14972         .mask_operand = {
14973                 (BNXT_ULP_HF24_IDX_SVIF_INDEX >> 8) & 0xff,
14974                 BNXT_ULP_HF24_IDX_SVIF_INDEX & 0xff,
14975                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
14976                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
14977         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
14978         .spec_operand = {
14979                 (BNXT_ULP_HF24_IDX_SVIF_INDEX >> 8) & 0xff,
14980                 BNXT_ULP_HF24_IDX_SVIF_INDEX & 0xff,
14981                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
14982                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
14983         },
14984         {
14985         .description = "sparif",
14986         .field_bit_size = 4,
14987         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14988         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14989         },
14990         {
14991         .description = "tl2_ivlan_vid",
14992         .field_bit_size = 12,
14993         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14994         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14995         },
14996         {
14997         .description = "tl2_ovlan_vid",
14998         .field_bit_size = 12,
14999         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15000         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15001         },
15002         {
15003         .description = "mac1_l2_addr",
15004         .field_bit_size = 48,
15005         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15006         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15007         },
15008         {
15009         .description = "l2_num_vtags",
15010         .field_bit_size = 2,
15011         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
15012         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
15013                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
15014         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,
15015         .spec_operand = {
15016                 (BNXT_ULP_CF_IDX_O_VTAG_NUM >> 8) & 0xff,
15017                 BNXT_ULP_CF_IDX_O_VTAG_NUM & 0xff,
15018                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
15019                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
15020         },
15021         {
15022         .description = "tl2_num_vtags",
15023         .field_bit_size = 2,
15024         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15025         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15026         },
15027         {
15028         .description = "tun_hdr_type",
15029         .field_bit_size = 4,
15030         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
15031         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
15032                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
15033         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
15034         .spec_operand = {
15035                 BNXT_ULP_SYM_TUN_HDR_TYPE_NONE,
15036                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
15037                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
15038         },
15039         {
15040         .description = "key_type",
15041         .field_bit_size = 2,
15042         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
15043         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
15044                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
15045         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
15046         .spec_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,
15047                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
15048         },
15049         {
15050         .description = "valid",
15051         .field_bit_size = 1,
15052         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
15053         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
15054                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
15055         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
15056         .spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
15057                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
15058         },
15059         /* class_tid: 24, wh_plus, table: profile_tcam_cache_0 */
15060         {
15061         .description = "recycle",
15062         .field_bit_size = 1,
15063         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15064         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15065         },
15066         {
15067         .description = "prof_func_id",
15068         .field_bit_size = 7,
15069         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15070         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
15071         .spec_operand = {
15072                 (BNXT_ULP_GLB_REGFILE_INDEX_L2_PROF_FUNC_ID >> 8) & 0xff,
15073                 BNXT_ULP_GLB_REGFILE_INDEX_L2_PROF_FUNC_ID & 0xff,
15074                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
15075                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
15076         },
15077         {
15078         .description = "class_tid",
15079         .field_bit_size = 8,
15080         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15081         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
15082         .spec_operand = {
15083                 (BNXT_ULP_REGFILE_INDEX_CLASS_TID >> 8) & 0xff,
15084                 BNXT_ULP_REGFILE_INDEX_CLASS_TID & 0xff,
15085                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
15086                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
15087         },
15088         /* class_tid: 24, wh_plus, table: profile_tcam_0 */
15089         {
15090         .description = "l4_hdr_is_udp_tcp",
15091         .field_bit_size = 1,
15092         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15093         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15094         },
15095         {
15096         .description = "l4_hdr_type",
15097         .field_bit_size = 4,
15098         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15099         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15100         },
15101         {
15102         .description = "l4_hdr_error",
15103         .field_bit_size = 1,
15104         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15105         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15106         },
15107         {
15108         .description = "l4_hdr_valid",
15109         .field_bit_size = 1,
15110         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15111         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15112         },
15113         {
15114         .description = "l3_ipv6_cmp_dst",
15115         .field_bit_size = 1,
15116         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15117         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15118         },
15119         {
15120         .description = "l3_ipv6_cmp_src",
15121         .field_bit_size = 1,
15122         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15123         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15124         },
15125         {
15126         .description = "l3_hdr_isIP",
15127         .field_bit_size = 1,
15128         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15129         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15130         },
15131         {
15132         .description = "l3_hdr_type",
15133         .field_bit_size = 4,
15134         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
15135         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
15136                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
15137         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15138         },
15139         {
15140         .description = "l3_hdr_error",
15141         .field_bit_size = 1,
15142         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
15143         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
15144                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
15145         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15146         },
15147         {
15148         .description = "l3_hdr_valid",
15149         .field_bit_size = 1,
15150         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
15151         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
15152                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
15153         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
15154         .spec_operand = {
15155                 BNXT_ULP_SYM_L3_HDR_VALID_YES,
15156                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
15157                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
15158         },
15159         {
15160         .description = "l2_two_vtags",
15161         .field_bit_size = 1,
15162         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15163         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15164         },
15165         {
15166         .description = "l2_vtag_present",
15167         .field_bit_size = 1,
15168         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15169         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15170         },
15171         {
15172         .description = "l2_uc_mc_bc",
15173         .field_bit_size = 2,
15174         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
15175         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
15176                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
15177         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15178         },
15179         {
15180         .description = "l2_hdr_type",
15181         .field_bit_size = 2,
15182         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
15183         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
15184                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
15185         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15186         },
15187         {
15188         .description = "l2_hdr_error",
15189         .field_bit_size = 1,
15190         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
15191         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
15192                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
15193         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15194         },
15195         {
15196         .description = "l2_hdr_valid",
15197         .field_bit_size = 1,
15198         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
15199         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
15200                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
15201         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
15202         .spec_operand = {
15203                 BNXT_ULP_SYM_L2_HDR_VALID_YES,
15204                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
15205                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
15206         },
15207         {
15208         .description = "tun_hdr_flags",
15209         .field_bit_size = 3,
15210         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15211         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15212         },
15213         {
15214         .description = "tun_hdr_type",
15215         .field_bit_size = 4,
15216         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15217         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15218         },
15219         {
15220         .description = "tun_hdr_error",
15221         .field_bit_size = 1,
15222         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15223         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15224         },
15225         {
15226         .description = "tun_hdr_valid",
15227         .field_bit_size = 1,
15228         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
15229         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
15230                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
15231         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15232         },
15233         {
15234         .description = "tl4_hdr_is_udp_tcp",
15235         .field_bit_size = 1,
15236         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15237         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15238         },
15239         {
15240         .description = "tl4_hdr_type",
15241         .field_bit_size = 4,
15242         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15243         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15244         },
15245         {
15246         .description = "tl4_hdr_error",
15247         .field_bit_size = 1,
15248         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15249         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15250         },
15251         {
15252         .description = "tl4_hdr_valid",
15253         .field_bit_size = 1,
15254         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
15255         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
15256                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
15257         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15258         },
15259         {
15260         .description = "tl3_ipv6_cmp_dst",
15261         .field_bit_size = 1,
15262         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15263         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15264         },
15265         {
15266         .description = "tl3_ipv6_cmp_src",
15267         .field_bit_size = 1,
15268         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15269         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15270         },
15271         {
15272         .description = "tl3_hdr_isIP",
15273         .field_bit_size = 1,
15274         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15275         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15276         },
15277         {
15278         .description = "tl3_hdr_type",
15279         .field_bit_size = 4,
15280         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15281         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15282         },
15283         {
15284         .description = "tl3_hdr_error",
15285         .field_bit_size = 1,
15286         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15287         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15288         },
15289         {
15290         .description = "tl3_hdr_valid",
15291         .field_bit_size = 1,
15292         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
15293         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
15294                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
15295         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15296         },
15297         {
15298         .description = "tl2_two_vtags",
15299         .field_bit_size = 1,
15300         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15301         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15302         },
15303         {
15304         .description = "tl2_vtag_present",
15305         .field_bit_size = 1,
15306         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15307         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15308         },
15309         {
15310         .description = "tl2_uc_mc_bc",
15311         .field_bit_size = 2,
15312         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15313         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15314         },
15315         {
15316         .description = "tl2_hdr_type",
15317         .field_bit_size = 2,
15318         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15319         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15320         },
15321         {
15322         .description = "tl2_hdr_valid",
15323         .field_bit_size = 1,
15324         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
15325         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
15326                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
15327         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15328         },
15329         {
15330         .description = "hrec_next",
15331         .field_bit_size = 1,
15332         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15333         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15334         },
15335         {
15336         .description = "reserved",
15337         .field_bit_size = 9,
15338         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15339         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15340         },
15341         {
15342         .description = "prof_func_id",
15343         .field_bit_size = 7,
15344         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
15345         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
15346                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
15347         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
15348         .spec_operand = {
15349                 (BNXT_ULP_GLB_REGFILE_INDEX_L2_PROF_FUNC_ID >> 8) & 0xff,
15350                 BNXT_ULP_GLB_REGFILE_INDEX_L2_PROF_FUNC_ID & 0xff,
15351                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
15352                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
15353         },
15354         {
15355         .description = "agg_error",
15356         .field_bit_size = 1,
15357         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15358         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15359         },
15360         {
15361         .description = "recycle_cnt",
15362         .field_bit_size = 2,
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 = "pkt_type_0",
15370         .field_bit_size = 2,
15371         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15372         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15373         },
15374         {
15375         .description = "pkt_type_1",
15376         .field_bit_size = 2,
15377         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
15378         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
15379                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
15380         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15381         },
15382         {
15383         .description = "valid",
15384         .field_bit_size = 1,
15385         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
15386         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
15387                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
15388         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
15389         .spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
15390                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
15391         },
15392         /* class_tid: 24, wh_plus, table: ext_em_0 */
15393         {
15394         .description = "spare",
15395         .field_bit_size = 351,
15396         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15397         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15398         },
15399         {
15400         .description = "local_cos",
15401         .field_bit_size = 3,
15402         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15403         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15404         },
15405         {
15406         .description = "l2_eth_type",
15407         .field_bit_size = 16,
15408         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15409         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15410         },
15411         {
15412         .description = "l2_inner_vid",
15413         .field_bit_size = 12,
15414         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15415         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15416         },
15417         {
15418         .description = "l2_dmac",
15419         .field_bit_size = 48,
15420         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15421         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
15422         .spec_operand = {
15423                 (BNXT_ULP_HF24_IDX_O_ETH_DMAC >> 8) & 0xff,
15424                 BNXT_ULP_HF24_IDX_O_ETH_DMAC & 0xff,
15425                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
15426                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
15427         },
15428         {
15429         .description = "l2_cntxt_id",
15430         .field_bit_size = 10,
15431         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15432         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
15433         .spec_operand = {
15434                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
15435                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
15436                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
15437                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
15438         },
15439         {
15440         .description = "em_profile_id",
15441         .field_bit_size = 8,
15442         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15443         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
15444         .spec_operand = {
15445                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
15446                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
15447                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
15448                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
15449         },
15450         /* class_tid: 24, wh_plus, table: int_em_0 */
15451         {
15452         .description = "spare",
15453         .field_bit_size = 7,
15454         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15455         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15456         },
15457         {
15458         .description = "local_cos",
15459         .field_bit_size = 3,
15460         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15461         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15462         },
15463         {
15464         .description = "l2_eth_type",
15465         .field_bit_size = 16,
15466         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15467         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15468         },
15469         {
15470         .description = "l2_inner_vid",
15471         .field_bit_size = 12,
15472         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15473         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15474         },
15475         {
15476         .description = "l2_dmac",
15477         .field_bit_size = 48,
15478         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15479         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
15480         .spec_operand = {
15481                 (BNXT_ULP_HF24_IDX_O_ETH_DMAC >> 8) & 0xff,
15482                 BNXT_ULP_HF24_IDX_O_ETH_DMAC & 0xff,
15483                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
15484                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
15485         },
15486         {
15487         .description = "l2_cntxt_id",
15488         .field_bit_size = 10,
15489         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15490         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
15491         .spec_operand = {
15492                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
15493                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
15494                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
15495                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
15496         },
15497         {
15498         .description = "em_profile_id",
15499         .field_bit_size = 8,
15500         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15501         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
15502         .spec_operand = {
15503                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
15504                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
15505                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
15506                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
15507         },
15508         /* class_tid: 25, wh_plus, table: l2_cntxt_tcam_0 */
15509         {
15510         .description = "l2_ivlan_vid",
15511         .field_bit_size = 12,
15512         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
15513         .mask_operand = {
15514                 (BNXT_ULP_HF25_IDX_OO_VLAN_VID >> 8) & 0xff,
15515                 BNXT_ULP_HF25_IDX_OO_VLAN_VID & 0xff,
15516                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
15517                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
15518         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
15519         .spec_operand = {
15520                 (BNXT_ULP_HF25_IDX_OO_VLAN_VID >> 8) & 0xff,
15521                 BNXT_ULP_HF25_IDX_OO_VLAN_VID & 0xff,
15522                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
15523                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
15524         },
15525         {
15526         .description = "l2_ovlan_vid",
15527         .field_bit_size = 12,
15528         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15529         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15530         },
15531         {
15532         .description = "mac0_l2_addr",
15533         .field_bit_size = 48,
15534         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
15535         .mask_operand = {
15536                 (BNXT_ULP_HF25_IDX_O_ETH_SMAC >> 8) & 0xff,
15537                 BNXT_ULP_HF25_IDX_O_ETH_SMAC & 0xff,
15538                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
15539                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
15540         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
15541         .spec_operand = {
15542                 (BNXT_ULP_HF25_IDX_O_ETH_SMAC >> 8) & 0xff,
15543                 BNXT_ULP_HF25_IDX_O_ETH_SMAC & 0xff,
15544                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
15545                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
15546         },
15547         {
15548         .description = "svif",
15549         .field_bit_size = 8,
15550         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
15551         .mask_operand = {
15552                 (BNXT_ULP_HF25_IDX_SVIF_INDEX >> 8) & 0xff,
15553                 BNXT_ULP_HF25_IDX_SVIF_INDEX & 0xff,
15554                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
15555                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
15556         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
15557         .spec_operand = {
15558                 (BNXT_ULP_HF25_IDX_SVIF_INDEX >> 8) & 0xff,
15559                 BNXT_ULP_HF25_IDX_SVIF_INDEX & 0xff,
15560                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
15561                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
15562         },
15563         {
15564         .description = "sparif",
15565         .field_bit_size = 4,
15566         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15567         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15568         },
15569         {
15570         .description = "tl2_ivlan_vid",
15571         .field_bit_size = 12,
15572         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15573         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15574         },
15575         {
15576         .description = "tl2_ovlan_vid",
15577         .field_bit_size = 12,
15578         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15579         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15580         },
15581         {
15582         .description = "mac1_l2_addr",
15583         .field_bit_size = 48,
15584         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15585         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15586         },
15587         {
15588         .description = "l2_num_vtags",
15589         .field_bit_size = 2,
15590         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
15591         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
15592                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
15593         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,
15594         .spec_operand = {
15595                 (BNXT_ULP_CF_IDX_O_VTAG_NUM >> 8) & 0xff,
15596                 BNXT_ULP_CF_IDX_O_VTAG_NUM & 0xff,
15597                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
15598                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
15599         },
15600         {
15601         .description = "tl2_num_vtags",
15602         .field_bit_size = 2,
15603         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15604         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15605         },
15606         {
15607         .description = "tun_hdr_type",
15608         .field_bit_size = 4,
15609         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
15610         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
15611                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
15612         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
15613         .spec_operand = {
15614                 BNXT_ULP_SYM_TUN_HDR_TYPE_NONE,
15615                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
15616                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
15617         },
15618         {
15619         .description = "key_type",
15620         .field_bit_size = 2,
15621         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
15622         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
15623                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
15624         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
15625         .spec_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,
15626                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
15627         },
15628         {
15629         .description = "valid",
15630         .field_bit_size = 1,
15631         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
15632         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
15633                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
15634         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
15635         .spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
15636                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
15637         },
15638         /* class_tid: 25, wh_plus, table: profile_tcam_cache_0 */
15639         {
15640         .description = "recycle",
15641         .field_bit_size = 1,
15642         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15643         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15644         },
15645         {
15646         .description = "prof_func_id",
15647         .field_bit_size = 7,
15648         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15649         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
15650         .spec_operand = {
15651                 (BNXT_ULP_GLB_REGFILE_INDEX_L2_PROF_FUNC_ID >> 8) & 0xff,
15652                 BNXT_ULP_GLB_REGFILE_INDEX_L2_PROF_FUNC_ID & 0xff,
15653                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
15654                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
15655         },
15656         {
15657         .description = "class_tid",
15658         .field_bit_size = 8,
15659         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15660         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
15661         .spec_operand = {
15662                 (BNXT_ULP_REGFILE_INDEX_CLASS_TID >> 8) & 0xff,
15663                 BNXT_ULP_REGFILE_INDEX_CLASS_TID & 0xff,
15664                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
15665                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
15666         },
15667         /* class_tid: 25, wh_plus, table: profile_tcam_0 */
15668         {
15669         .description = "l4_hdr_is_udp_tcp",
15670         .field_bit_size = 1,
15671         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15672         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15673         },
15674         {
15675         .description = "l4_hdr_type",
15676         .field_bit_size = 4,
15677         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15678         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15679         },
15680         {
15681         .description = "l4_hdr_error",
15682         .field_bit_size = 1,
15683         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15684         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15685         },
15686         {
15687         .description = "l4_hdr_valid",
15688         .field_bit_size = 1,
15689         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15690         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15691         },
15692         {
15693         .description = "l3_ipv6_cmp_dst",
15694         .field_bit_size = 1,
15695         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15696         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15697         },
15698         {
15699         .description = "l3_ipv6_cmp_src",
15700         .field_bit_size = 1,
15701         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15702         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15703         },
15704         {
15705         .description = "l3_hdr_isIP",
15706         .field_bit_size = 1,
15707         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15708         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15709         },
15710         {
15711         .description = "l3_hdr_type",
15712         .field_bit_size = 4,
15713         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
15714         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
15715                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
15716         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
15717         .spec_operand = {
15718                 BNXT_ULP_SYM_L3_HDR_TYPE_IPV6,
15719                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
15720                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
15721         },
15722         {
15723         .description = "l3_hdr_error",
15724         .field_bit_size = 1,
15725         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
15726         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
15727                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
15728         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15729         },
15730         {
15731         .description = "l3_hdr_valid",
15732         .field_bit_size = 1,
15733         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
15734         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
15735                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
15736         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
15737         .spec_operand = {
15738                 BNXT_ULP_SYM_L3_HDR_VALID_YES,
15739                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
15740                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
15741         },
15742         {
15743         .description = "l2_two_vtags",
15744         .field_bit_size = 1,
15745         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15746         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15747         },
15748         {
15749         .description = "l2_vtag_present",
15750         .field_bit_size = 1,
15751         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15752         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15753         },
15754         {
15755         .description = "l2_uc_mc_bc",
15756         .field_bit_size = 2,
15757         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
15758         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
15759                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
15760         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15761         },
15762         {
15763         .description = "l2_hdr_type",
15764         .field_bit_size = 2,
15765         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
15766         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
15767                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
15768         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15769         },
15770         {
15771         .description = "l2_hdr_error",
15772         .field_bit_size = 1,
15773         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
15774         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
15775                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
15776         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15777         },
15778         {
15779         .description = "l2_hdr_valid",
15780         .field_bit_size = 1,
15781         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
15782         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
15783                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
15784         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
15785         .spec_operand = {
15786                 BNXT_ULP_SYM_L2_HDR_VALID_YES,
15787                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
15788                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
15789         },
15790         {
15791         .description = "tun_hdr_flags",
15792         .field_bit_size = 3,
15793         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15794         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15795         },
15796         {
15797         .description = "tun_hdr_type",
15798         .field_bit_size = 4,
15799         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15800         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15801         },
15802         {
15803         .description = "tun_hdr_error",
15804         .field_bit_size = 1,
15805         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15806         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15807         },
15808         {
15809         .description = "tun_hdr_valid",
15810         .field_bit_size = 1,
15811         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
15812         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
15813                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
15814         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15815         },
15816         {
15817         .description = "tl4_hdr_is_udp_tcp",
15818         .field_bit_size = 1,
15819         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15820         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15821         },
15822         {
15823         .description = "tl4_hdr_type",
15824         .field_bit_size = 4,
15825         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15826         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15827         },
15828         {
15829         .description = "tl4_hdr_error",
15830         .field_bit_size = 1,
15831         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15832         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15833         },
15834         {
15835         .description = "tl4_hdr_valid",
15836         .field_bit_size = 1,
15837         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
15838         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
15839                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
15840         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15841         },
15842         {
15843         .description = "tl3_ipv6_cmp_dst",
15844         .field_bit_size = 1,
15845         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15846         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15847         },
15848         {
15849         .description = "tl3_ipv6_cmp_src",
15850         .field_bit_size = 1,
15851         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15852         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15853         },
15854         {
15855         .description = "tl3_hdr_isIP",
15856         .field_bit_size = 1,
15857         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15858         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15859         },
15860         {
15861         .description = "tl3_hdr_type",
15862         .field_bit_size = 4,
15863         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15864         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15865         },
15866         {
15867         .description = "tl3_hdr_error",
15868         .field_bit_size = 1,
15869         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15870         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15871         },
15872         {
15873         .description = "tl3_hdr_valid",
15874         .field_bit_size = 1,
15875         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
15876         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
15877                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
15878         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15879         },
15880         {
15881         .description = "tl2_two_vtags",
15882         .field_bit_size = 1,
15883         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15884         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15885         },
15886         {
15887         .description = "tl2_vtag_present",
15888         .field_bit_size = 1,
15889         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15890         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15891         },
15892         {
15893         .description = "tl2_uc_mc_bc",
15894         .field_bit_size = 2,
15895         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15896         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15897         },
15898         {
15899         .description = "tl2_hdr_type",
15900         .field_bit_size = 2,
15901         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15902         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15903         },
15904         {
15905         .description = "tl2_hdr_valid",
15906         .field_bit_size = 1,
15907         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
15908         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
15909                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
15910         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15911         },
15912         {
15913         .description = "hrec_next",
15914         .field_bit_size = 1,
15915         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15916         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15917         },
15918         {
15919         .description = "reserved",
15920         .field_bit_size = 9,
15921         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15922         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15923         },
15924         {
15925         .description = "prof_func_id",
15926         .field_bit_size = 7,
15927         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
15928         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
15929                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
15930         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
15931         .spec_operand = {
15932                 (BNXT_ULP_GLB_REGFILE_INDEX_L2_PROF_FUNC_ID >> 8) & 0xff,
15933                 BNXT_ULP_GLB_REGFILE_INDEX_L2_PROF_FUNC_ID & 0xff,
15934                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
15935                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
15936         },
15937         {
15938         .description = "agg_error",
15939         .field_bit_size = 1,
15940         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15941         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15942         },
15943         {
15944         .description = "recycle_cnt",
15945         .field_bit_size = 2,
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 = "pkt_type_0",
15953         .field_bit_size = 2,
15954         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15955         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15956         },
15957         {
15958         .description = "pkt_type_1",
15959         .field_bit_size = 2,
15960         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
15961         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
15962                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
15963         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15964         },
15965         {
15966         .description = "valid",
15967         .field_bit_size = 1,
15968         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
15969         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
15970                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
15971         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
15972         .spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
15973                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
15974         },
15975         /* class_tid: 25, wh_plus, table: ext_em_0 */
15976         {
15977         .description = "spare",
15978         .field_bit_size = 351,
15979         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15980         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15981         },
15982         {
15983         .description = "local_cos",
15984         .field_bit_size = 3,
15985         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15986         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15987         },
15988         {
15989         .description = "l2_eth_type",
15990         .field_bit_size = 16,
15991         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15992         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15993         },
15994         {
15995         .description = "l2_inner_vid",
15996         .field_bit_size = 12,
15997         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15998         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15999         },
16000         {
16001         .description = "l2_dmac",
16002         .field_bit_size = 48,
16003         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
16004         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
16005         .spec_operand = {
16006                 (BNXT_ULP_HF25_IDX_O_ETH_DMAC >> 8) & 0xff,
16007                 BNXT_ULP_HF25_IDX_O_ETH_DMAC & 0xff,
16008                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
16009                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
16010         },
16011         {
16012         .description = "l2_cntxt_id",
16013         .field_bit_size = 10,
16014         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
16015         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
16016         .spec_operand = {
16017                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
16018                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
16019                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
16020                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
16021         },
16022         {
16023         .description = "em_profile_id",
16024         .field_bit_size = 8,
16025         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
16026         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
16027         .spec_operand = {
16028                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
16029                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
16030                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
16031                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
16032         },
16033         /* class_tid: 25, wh_plus, table: int_em_0 */
16034         {
16035         .description = "spare",
16036         .field_bit_size = 7,
16037         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
16038         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16039         },
16040         {
16041         .description = "local_cos",
16042         .field_bit_size = 3,
16043         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
16044         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16045         },
16046         {
16047         .description = "l2_eth_type",
16048         .field_bit_size = 16,
16049         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
16050         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16051         },
16052         {
16053         .description = "l2_inner_vid",
16054         .field_bit_size = 12,
16055         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
16056         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16057         },
16058         {
16059         .description = "l2_dmac",
16060         .field_bit_size = 48,
16061         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
16062         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
16063         .spec_operand = {
16064                 (BNXT_ULP_HF25_IDX_O_ETH_DMAC >> 8) & 0xff,
16065                 BNXT_ULP_HF25_IDX_O_ETH_DMAC & 0xff,
16066                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
16067                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
16068         },
16069         {
16070         .description = "l2_cntxt_id",
16071         .field_bit_size = 10,
16072         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
16073         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
16074         .spec_operand = {
16075                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
16076                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
16077                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
16078                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
16079         },
16080         {
16081         .description = "em_profile_id",
16082         .field_bit_size = 8,
16083         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
16084         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
16085         .spec_operand = {
16086                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
16087                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
16088                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
16089                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
16090         }
16091 };
16092
16093 struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] = {
16094         /* class_tid: 1, wh_plus, table: int_full_act_record_0 */
16095         {
16096         .description = "flow_cntr_ptr",
16097         .field_bit_size = 14,
16098         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16099         },
16100         {
16101         .description = "age_enable",
16102         .field_bit_size = 1,
16103         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16104         },
16105         {
16106         .description = "agg_cntr_en",
16107         .field_bit_size = 1,
16108         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16109         },
16110         {
16111         .description = "rate_cntr_en",
16112         .field_bit_size = 1,
16113         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16114         },
16115         {
16116         .description = "flow_cntr_en",
16117         .field_bit_size = 1,
16118         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16119         },
16120         {
16121         .description = "tcpflags_key",
16122         .field_bit_size = 8,
16123         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16124         },
16125         {
16126         .description = "tcpflags_mir",
16127         .field_bit_size = 1,
16128         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16129         },
16130         {
16131         .description = "tcpflags_match",
16132         .field_bit_size = 1,
16133         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16134         },
16135         {
16136         .description = "encap_ptr",
16137         .field_bit_size = 11,
16138         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16139         },
16140         {
16141         .description = "dst_ip_ptr",
16142         .field_bit_size = 10,
16143         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16144         },
16145         {
16146         .description = "tcp_dst_port",
16147         .field_bit_size = 16,
16148         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16149         },
16150         {
16151         .description = "src_ip_ptr",
16152         .field_bit_size = 10,
16153         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16154         },
16155         {
16156         .description = "tcp_src_port",
16157         .field_bit_size = 16,
16158         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16159         },
16160         {
16161         .description = "meter_id",
16162         .field_bit_size = 10,
16163         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16164         },
16165         {
16166         .description = "l3_rdir",
16167         .field_bit_size = 1,
16168         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16169         },
16170         {
16171         .description = "tl3_rdir",
16172         .field_bit_size = 1,
16173         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16174         },
16175         {
16176         .description = "l3_ttl_dec",
16177         .field_bit_size = 1,
16178         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16179         },
16180         {
16181         .description = "tl3_ttl_dec",
16182         .field_bit_size = 1,
16183         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16184         },
16185         {
16186         .description = "decap_func",
16187         .field_bit_size = 4,
16188         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16189         },
16190         {
16191         .description = "vnic_or_vport",
16192         .field_bit_size = 12,
16193         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,
16194         .result_operand = {
16195                 (BNXT_ULP_CF_IDX_DRV_FUNC_VNIC >> 8) & 0xff,
16196                 BNXT_ULP_CF_IDX_DRV_FUNC_VNIC & 0xff,
16197                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
16198                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
16199         },
16200         {
16201         .description = "pop_vlan",
16202         .field_bit_size = 1,
16203         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16204         },
16205         {
16206         .description = "meter",
16207         .field_bit_size = 1,
16208         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16209         },
16210         {
16211         .description = "mirror",
16212         .field_bit_size = 2,
16213         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16214         },
16215         {
16216         .description = "drop",
16217         .field_bit_size = 1,
16218         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16219         },
16220         {
16221         .description = "hit",
16222         .field_bit_size = 1,
16223         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16224         },
16225         {
16226         .description = "type",
16227         .field_bit_size = 1,
16228         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16229         },
16230         /* class_tid: 1, wh_plus, table: l2_cntxt_cache_0 */
16231         {
16232         .description = "l2_cntxt_id",
16233         .field_bit_size = 10,
16234         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
16235         .result_operand = {
16236                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
16237                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
16238                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
16239                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
16240         },
16241         /* class_tid: 1, wh_plus, table: l2_cntxt_tcam_0 */
16242         {
16243         .description = "l2_cntxt_id",
16244         .field_bit_size = 10,
16245         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
16246         .result_operand = {
16247                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
16248                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
16249                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
16250                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
16251         },
16252         {
16253         .description = "prof_func_id",
16254         .field_bit_size = 7,
16255         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
16256         .result_operand = {
16257                 (BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID >> 8) & 0xff,
16258                 BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID & 0xff,
16259                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
16260                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
16261         },
16262         {
16263         .description = "l2_byp_lkup_en",
16264         .field_bit_size = 1,
16265         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16266         },
16267         {
16268         .description = "parif",
16269         .field_bit_size = 4,
16270         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,
16271         .result_operand = {
16272                 (BNXT_ULP_CF_IDX_PHY_PORT_PARIF >> 8) & 0xff,
16273                 BNXT_ULP_CF_IDX_PHY_PORT_PARIF & 0xff,
16274                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
16275                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
16276         },
16277         {
16278         .description = "allowed_pri",
16279         .field_bit_size = 8,
16280         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16281         },
16282         {
16283         .description = "default_pri",
16284         .field_bit_size = 3,
16285         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16286         },
16287         {
16288         .description = "allowed_tpid",
16289         .field_bit_size = 6,
16290         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16291         },
16292         {
16293         .description = "default_tpid",
16294         .field_bit_size = 3,
16295         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16296         },
16297         {
16298         .description = "bd_act_en",
16299         .field_bit_size = 1,
16300         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16301         },
16302         {
16303         .description = "sp_rec_ptr",
16304         .field_bit_size = 16,
16305         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16306         },
16307         {
16308         .description = "byp_sp_lkup",
16309         .field_bit_size = 1,
16310         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
16311         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
16312                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
16313         },
16314         {
16315         .description = "pri_anti_spoof_ctl",
16316         .field_bit_size = 2,
16317         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16318         },
16319         {
16320         .description = "tpid_anti_spoof_ctl",
16321         .field_bit_size = 2,
16322         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16323         },
16324         /* class_tid: 1, wh_plus, table: parif_def_lkup_arec_ptr_0 */
16325         {
16326         .description = "act_rec_ptr",
16327         .field_bit_size = 32,
16328         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
16329         .result_operand = {
16330                 (BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR >> 8) & 0xff,
16331                 BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR & 0xff,
16332                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
16333                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
16334         },
16335         /* class_tid: 1, wh_plus, table: parif_def_arec_ptr_0 */
16336         {
16337         .description = "act_rec_ptr",
16338         .field_bit_size = 32,
16339         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
16340         .result_operand = {
16341                 (BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR >> 8) & 0xff,
16342                 BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR & 0xff,
16343                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
16344                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
16345         },
16346         /* class_tid: 1, wh_plus, table: parif_def_err_arec_ptr_0 */
16347         {
16348         .description = "act_rec_ptr",
16349         .field_bit_size = 32,
16350         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
16351         .result_operand = {
16352                 (BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR >> 8) & 0xff,
16353                 BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR & 0xff,
16354                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
16355                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
16356         },
16357         /* class_tid: 2, wh_plus, table: int_full_act_record_0 */
16358         {
16359         .description = "flow_cntr_ptr",
16360         .field_bit_size = 14,
16361         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16362         },
16363         {
16364         .description = "age_enable",
16365         .field_bit_size = 1,
16366         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16367         },
16368         {
16369         .description = "agg_cntr_en",
16370         .field_bit_size = 1,
16371         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16372         },
16373         {
16374         .description = "rate_cntr_en",
16375         .field_bit_size = 1,
16376         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16377         },
16378         {
16379         .description = "flow_cntr_en",
16380         .field_bit_size = 1,
16381         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16382         },
16383         {
16384         .description = "tcpflags_key",
16385         .field_bit_size = 8,
16386         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16387         },
16388         {
16389         .description = "tcpflags_mir",
16390         .field_bit_size = 1,
16391         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16392         },
16393         {
16394         .description = "tcpflags_match",
16395         .field_bit_size = 1,
16396         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16397         },
16398         {
16399         .description = "encap_ptr",
16400         .field_bit_size = 11,
16401         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16402         },
16403         {
16404         .description = "dst_ip_ptr",
16405         .field_bit_size = 10,
16406         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16407         },
16408         {
16409         .description = "tcp_dst_port",
16410         .field_bit_size = 16,
16411         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16412         },
16413         {
16414         .description = "src_ip_ptr",
16415         .field_bit_size = 10,
16416         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16417         },
16418         {
16419         .description = "tcp_src_port",
16420         .field_bit_size = 16,
16421         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16422         },
16423         {
16424         .description = "meter_id",
16425         .field_bit_size = 10,
16426         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16427         },
16428         {
16429         .description = "l3_rdir",
16430         .field_bit_size = 1,
16431         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16432         },
16433         {
16434         .description = "tl3_rdir",
16435         .field_bit_size = 1,
16436         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16437         },
16438         {
16439         .description = "l3_ttl_dec",
16440         .field_bit_size = 1,
16441         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16442         },
16443         {
16444         .description = "tl3_ttl_dec",
16445         .field_bit_size = 1,
16446         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16447         },
16448         {
16449         .description = "decap_func",
16450         .field_bit_size = 4,
16451         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16452         },
16453         {
16454         .description = "vnic_or_vport",
16455         .field_bit_size = 12,
16456         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,
16457         .result_operand = {
16458                 (BNXT_ULP_CF_IDX_PHY_PORT_VPORT >> 8) & 0xff,
16459                 BNXT_ULP_CF_IDX_PHY_PORT_VPORT & 0xff,
16460                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
16461                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
16462         },
16463         {
16464         .description = "pop_vlan",
16465         .field_bit_size = 1,
16466         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16467         },
16468         {
16469         .description = "meter",
16470         .field_bit_size = 1,
16471         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16472         },
16473         {
16474         .description = "mirror",
16475         .field_bit_size = 2,
16476         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16477         },
16478         {
16479         .description = "drop",
16480         .field_bit_size = 1,
16481         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16482         },
16483         {
16484         .description = "hit",
16485         .field_bit_size = 1,
16486         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16487         },
16488         {
16489         .description = "type",
16490         .field_bit_size = 1,
16491         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16492         },
16493         /* class_tid: 2, wh_plus, table: l2_cntxt_tcam_vfr_0 */
16494         {
16495         .description = "act_record_ptr",
16496         .field_bit_size = 16,
16497         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16498         },
16499         {
16500         .description = "reserved",
16501         .field_bit_size = 1,
16502         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16503         },
16504         {
16505         .description = "l2_byp_lkup_en",
16506         .field_bit_size = 1,
16507         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
16508         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
16509                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
16510         },
16511         {
16512         .description = "parif",
16513         .field_bit_size = 4,
16514         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,
16515         .result_operand = {
16516                 (BNXT_ULP_CF_IDX_DRV_FUNC_PARIF >> 8) & 0xff,
16517                 BNXT_ULP_CF_IDX_DRV_FUNC_PARIF & 0xff,
16518                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
16519                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
16520         },
16521         {
16522         .description = "allowed_pri",
16523         .field_bit_size = 8,
16524         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16525         },
16526         {
16527         .description = "default_pri",
16528         .field_bit_size = 3,
16529         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16530         },
16531         {
16532         .description = "allowed_tpid",
16533         .field_bit_size = 6,
16534         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16535         },
16536         {
16537         .description = "default_tpid",
16538         .field_bit_size = 3,
16539         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16540         },
16541         {
16542         .description = "bd_act_en",
16543         .field_bit_size = 1,
16544         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
16545         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
16546                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
16547         },
16548         {
16549         .description = "sp_rec_ptr",
16550         .field_bit_size = 16,
16551         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16552         },
16553         {
16554         .description = "byp_sp_lkup",
16555         .field_bit_size = 1,
16556         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
16557         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
16558                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
16559         },
16560         {
16561         .description = "pri_anti_spoof_ctl",
16562         .field_bit_size = 2,
16563         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16564         },
16565         {
16566         .description = "tpid_anti_spoof_ctl",
16567         .field_bit_size = 2,
16568         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16569         },
16570         /* class_tid: 2, wh_plus, table: l2_cntxt_cache_0 */
16571         {
16572         .description = "l2_cntxt_id",
16573         .field_bit_size = 10,
16574         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
16575         .result_operand = {
16576                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
16577                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
16578                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
16579                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
16580         },
16581         /* class_tid: 2, wh_plus, table: l2_cntxt_tcam_0 */
16582         {
16583         .description = "l2_cntxt_id",
16584         .field_bit_size = 10,
16585         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
16586         .result_operand = {
16587                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
16588                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
16589                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
16590                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
16591         },
16592         {
16593         .description = "prof_func_id",
16594         .field_bit_size = 7,
16595         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
16596         .result_operand = {
16597                 (BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID >> 8) & 0xff,
16598                 BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID & 0xff,
16599                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
16600                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
16601         },
16602         {
16603         .description = "l2_byp_lkup_en",
16604         .field_bit_size = 1,
16605         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16606         },
16607         {
16608         .description = "parif",
16609         .field_bit_size = 4,
16610         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,
16611         .result_operand = {
16612                 (BNXT_ULP_CF_IDX_DRV_FUNC_PARIF >> 8) & 0xff,
16613                 BNXT_ULP_CF_IDX_DRV_FUNC_PARIF & 0xff,
16614                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
16615                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
16616         },
16617         {
16618         .description = "allowed_pri",
16619         .field_bit_size = 8,
16620         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16621         },
16622         {
16623         .description = "default_pri",
16624         .field_bit_size = 3,
16625         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16626         },
16627         {
16628         .description = "allowed_tpid",
16629         .field_bit_size = 6,
16630         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16631         },
16632         {
16633         .description = "default_tpid",
16634         .field_bit_size = 3,
16635         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16636         },
16637         {
16638         .description = "bd_act_en",
16639         .field_bit_size = 1,
16640         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16641         },
16642         {
16643         .description = "sp_rec_ptr",
16644         .field_bit_size = 16,
16645         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16646         },
16647         {
16648         .description = "byp_sp_lkup",
16649         .field_bit_size = 1,
16650         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
16651         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
16652                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
16653         },
16654         {
16655         .description = "pri_anti_spoof_ctl",
16656         .field_bit_size = 2,
16657         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16658         },
16659         {
16660         .description = "tpid_anti_spoof_ctl",
16661         .field_bit_size = 2,
16662         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16663         },
16664         /* class_tid: 2, wh_plus, table: parif_def_lkup_arec_ptr_0 */
16665         {
16666         .description = "act_rec_ptr",
16667         .field_bit_size = 32,
16668         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
16669         .result_operand = {
16670                 (BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR >> 8) & 0xff,
16671                 BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR & 0xff,
16672                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
16673                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
16674         },
16675         /* class_tid: 2, wh_plus, table: parif_def_arec_ptr_0 */
16676         {
16677         .description = "act_rec_ptr",
16678         .field_bit_size = 32,
16679         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
16680         .result_operand = {
16681                 (BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR >> 8) & 0xff,
16682                 BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR & 0xff,
16683                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
16684                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
16685         },
16686         /* class_tid: 2, wh_plus, table: parif_def_err_arec_ptr_0 */
16687         {
16688         .description = "act_rec_ptr",
16689         .field_bit_size = 32,
16690         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
16691         .result_operand = {
16692                 (BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR >> 8) & 0xff,
16693                 BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR & 0xff,
16694                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
16695                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
16696         },
16697         /* class_tid: 3, wh_plus, table: egr_int_vtag_encap_record_0 */
16698         {
16699         .description = "ecv_tun_type",
16700         .field_bit_size = 3,
16701         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16702         },
16703         {
16704         .description = "ecv_l4_type",
16705         .field_bit_size = 3,
16706         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16707         },
16708         {
16709         .description = "ecv_l3_type",
16710         .field_bit_size = 3,
16711         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16712         },
16713         {
16714         .description = "ecv_l2_en",
16715         .field_bit_size = 1,
16716         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16717         },
16718         {
16719         .description = "ecv_vtag_type",
16720         .field_bit_size = 4,
16721         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
16722         .result_operand = {
16723                 BNXT_ULP_SYM_ECV_VTAG_TYPE_ADD_1_ENCAP_PRI,
16724                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
16725                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
16726         },
16727         {
16728         .description = "ecv_custom_en",
16729         .field_bit_size = 1,
16730         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16731         },
16732         {
16733         .description = "ecv_valid",
16734         .field_bit_size = 1,
16735         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
16736         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
16737                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
16738         },
16739         {
16740         .description = "vtag_tpid",
16741         .field_bit_size = 16,
16742         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
16743         .result_operand = {0x81, 0x00}
16744         },
16745         {
16746         .description = "vtag_vid",
16747         .field_bit_size = 12,
16748         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,
16749         .result_operand = {
16750                 (BNXT_ULP_CF_IDX_DEV_PORT_ID >> 8) & 0xff,
16751                 BNXT_ULP_CF_IDX_DEV_PORT_ID & 0xff,
16752                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
16753                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
16754         },
16755         {
16756         .description = "vtag_de",
16757         .field_bit_size = 1,
16758         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16759         },
16760         {
16761         .description = "vtag_pcp",
16762         .field_bit_size = 3,
16763         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16764         },
16765         {
16766         .description = "spare",
16767         .field_bit_size = 16,
16768         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16769         },
16770         /* class_tid: 3, wh_plus, table: egr_int_full_act_record_0 */
16771         {
16772         .description = "flow_cntr_ptr",
16773         .field_bit_size = 14,
16774         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16775         },
16776         {
16777         .description = "age_enable",
16778         .field_bit_size = 1,
16779         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16780         },
16781         {
16782         .description = "agg_cntr_en",
16783         .field_bit_size = 1,
16784         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16785         },
16786         {
16787         .description = "rate_cntr_en",
16788         .field_bit_size = 1,
16789         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16790         },
16791         {
16792         .description = "flow_cntr_en",
16793         .field_bit_size = 1,
16794         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16795         },
16796         {
16797         .description = "tcpflags_key",
16798         .field_bit_size = 8,
16799         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16800         },
16801         {
16802         .description = "tcpflags_mir",
16803         .field_bit_size = 1,
16804         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16805         },
16806         {
16807         .description = "tcpflags_match",
16808         .field_bit_size = 1,
16809         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16810         },
16811         {
16812         .description = "encap_ptr",
16813         .field_bit_size = 11,
16814         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
16815         .result_operand = {
16816                 (BNXT_ULP_REGFILE_INDEX_ENCAP_PTR_0 >> 8) & 0xff,
16817                 BNXT_ULP_REGFILE_INDEX_ENCAP_PTR_0 & 0xff,
16818                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
16819                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
16820         },
16821         {
16822         .description = "dst_ip_ptr",
16823         .field_bit_size = 10,
16824         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16825         },
16826         {
16827         .description = "tcp_dst_port",
16828         .field_bit_size = 16,
16829         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16830         },
16831         {
16832         .description = "src_ip_ptr",
16833         .field_bit_size = 10,
16834         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16835         },
16836         {
16837         .description = "tcp_src_port",
16838         .field_bit_size = 16,
16839         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16840         },
16841         {
16842         .description = "meter_id",
16843         .field_bit_size = 10,
16844         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16845         },
16846         {
16847         .description = "l3_rdir",
16848         .field_bit_size = 1,
16849         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16850         },
16851         {
16852         .description = "tl3_rdir",
16853         .field_bit_size = 1,
16854         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16855         },
16856         {
16857         .description = "l3_ttl_dec",
16858         .field_bit_size = 1,
16859         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16860         },
16861         {
16862         .description = "tl3_ttl_dec",
16863         .field_bit_size = 1,
16864         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16865         },
16866         {
16867         .description = "decap_func",
16868         .field_bit_size = 4,
16869         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16870         },
16871         {
16872         .description = "vnic_or_vport",
16873         .field_bit_size = 12,
16874         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
16875         .result_operand = {
16876                 (BNXT_ULP_SYM_WH_PLUS_LOOPBACK_PORT >> 8) & 0xff,
16877                 BNXT_ULP_SYM_WH_PLUS_LOOPBACK_PORT & 0xff,
16878                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
16879                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
16880         },
16881         {
16882         .description = "pop_vlan",
16883         .field_bit_size = 1,
16884         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16885         },
16886         {
16887         .description = "meter",
16888         .field_bit_size = 1,
16889         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16890         },
16891         {
16892         .description = "mirror",
16893         .field_bit_size = 2,
16894         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16895         },
16896         {
16897         .description = "drop",
16898         .field_bit_size = 1,
16899         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16900         },
16901         {
16902         .description = "hit",
16903         .field_bit_size = 1,
16904         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16905         },
16906         {
16907         .description = "type",
16908         .field_bit_size = 1,
16909         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16910         },
16911         /* class_tid: 3, wh_plus, table: egr_l2_cntxt_cache_0 */
16912         /* class_tid: 3, wh_plus, table: egr_l2_cntxt_tcam_0 */
16913         {
16914         .description = "act_record_ptr",
16915         .field_bit_size = 16,
16916         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16917         },
16918         {
16919         .description = "reserved",
16920         .field_bit_size = 1,
16921         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16922         },
16923         {
16924         .description = "l2_byp_lkup_en",
16925         .field_bit_size = 1,
16926         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
16927         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
16928                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
16929         },
16930         {
16931         .description = "parif",
16932         .field_bit_size = 4,
16933         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16934         },
16935         {
16936         .description = "allowed_pri",
16937         .field_bit_size = 8,
16938         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16939         },
16940         {
16941         .description = "default_pri",
16942         .field_bit_size = 3,
16943         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16944         },
16945         {
16946         .description = "allowed_tpid",
16947         .field_bit_size = 6,
16948         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16949         },
16950         {
16951         .description = "default_tpid",
16952         .field_bit_size = 3,
16953         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16954         },
16955         {
16956         .description = "bd_act_en",
16957         .field_bit_size = 1,
16958         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
16959         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
16960                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
16961         },
16962         {
16963         .description = "sp_rec_ptr",
16964         .field_bit_size = 16,
16965         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16966         },
16967         {
16968         .description = "byp_sp_lkup",
16969         .field_bit_size = 1,
16970         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
16971         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
16972                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
16973         },
16974         {
16975         .description = "pri_anti_spoof_ctl",
16976         .field_bit_size = 2,
16977         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16978         },
16979         {
16980         .description = "tpid_anti_spoof_ctl",
16981         .field_bit_size = 2,
16982         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16983         },
16984         /* class_tid: 3, wh_plus, table: ing_int_full_act_record_0 */
16985         {
16986         .description = "flow_cntr_ptr",
16987         .field_bit_size = 14,
16988         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16989         },
16990         {
16991         .description = "age_enable",
16992         .field_bit_size = 1,
16993         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16994         },
16995         {
16996         .description = "agg_cntr_en",
16997         .field_bit_size = 1,
16998         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16999         },
17000         {
17001         .description = "rate_cntr_en",
17002         .field_bit_size = 1,
17003         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17004         },
17005         {
17006         .description = "flow_cntr_en",
17007         .field_bit_size = 1,
17008         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17009         },
17010         {
17011         .description = "tcpflags_key",
17012         .field_bit_size = 8,
17013         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17014         },
17015         {
17016         .description = "tcpflags_mir",
17017         .field_bit_size = 1,
17018         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17019         },
17020         {
17021         .description = "tcpflags_match",
17022         .field_bit_size = 1,
17023         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17024         },
17025         {
17026         .description = "encap_ptr",
17027         .field_bit_size = 11,
17028         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17029         },
17030         {
17031         .description = "dst_ip_ptr",
17032         .field_bit_size = 10,
17033         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17034         },
17035         {
17036         .description = "tcp_dst_port",
17037         .field_bit_size = 16,
17038         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17039         },
17040         {
17041         .description = "src_ip_ptr",
17042         .field_bit_size = 10,
17043         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17044         },
17045         {
17046         .description = "tcp_src_port",
17047         .field_bit_size = 16,
17048         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17049         },
17050         {
17051         .description = "meter_id",
17052         .field_bit_size = 10,
17053         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17054         },
17055         {
17056         .description = "l3_rdir",
17057         .field_bit_size = 1,
17058         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17059         },
17060         {
17061         .description = "tl3_rdir",
17062         .field_bit_size = 1,
17063         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17064         },
17065         {
17066         .description = "l3_ttl_dec",
17067         .field_bit_size = 1,
17068         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17069         },
17070         {
17071         .description = "tl3_ttl_dec",
17072         .field_bit_size = 1,
17073         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17074         },
17075         {
17076         .description = "decap_func",
17077         .field_bit_size = 4,
17078         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17079         },
17080         {
17081         .description = "vnic_or_vport",
17082         .field_bit_size = 12,
17083         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,
17084         .result_operand = {
17085                 (BNXT_ULP_CF_IDX_VF_FUNC_VNIC >> 8) & 0xff,
17086                 BNXT_ULP_CF_IDX_VF_FUNC_VNIC & 0xff,
17087                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
17088                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
17089         },
17090         {
17091         .description = "pop_vlan",
17092         .field_bit_size = 1,
17093         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
17094         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
17095                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
17096         },
17097         {
17098         .description = "meter",
17099         .field_bit_size = 1,
17100         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17101         },
17102         {
17103         .description = "mirror",
17104         .field_bit_size = 2,
17105         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17106         },
17107         {
17108         .description = "drop",
17109         .field_bit_size = 1,
17110         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17111         },
17112         {
17113         .description = "hit",
17114         .field_bit_size = 1,
17115         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17116         },
17117         {
17118         .description = "type",
17119         .field_bit_size = 1,
17120         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17121         },
17122         /* class_tid: 3, wh_plus, table: ing_l2_cntxt_dtagged_0 */
17123         {
17124         .description = "act_record_ptr",
17125         .field_bit_size = 16,
17126         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
17127         .result_operand = {
17128                 (BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR >> 8) & 0xff,
17129                 BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR & 0xff,
17130                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
17131                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
17132         },
17133         {
17134         .description = "reserved",
17135         .field_bit_size = 1,
17136         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17137         },
17138         {
17139         .description = "l2_byp_lkup_en",
17140         .field_bit_size = 1,
17141         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
17142         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
17143                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
17144         },
17145         {
17146         .description = "parif",
17147         .field_bit_size = 4,
17148         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17149         },
17150         {
17151         .description = "allowed_pri",
17152         .field_bit_size = 8,
17153         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17154         },
17155         {
17156         .description = "default_pri",
17157         .field_bit_size = 3,
17158         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17159         },
17160         {
17161         .description = "allowed_tpid",
17162         .field_bit_size = 6,
17163         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17164         },
17165         {
17166         .description = "default_tpid",
17167         .field_bit_size = 3,
17168         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17169         },
17170         {
17171         .description = "bd_act_en",
17172         .field_bit_size = 1,
17173         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17174         },
17175         {
17176         .description = "sp_rec_ptr",
17177         .field_bit_size = 16,
17178         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17179         },
17180         {
17181         .description = "byp_sp_lkup",
17182         .field_bit_size = 1,
17183         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
17184         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
17185                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
17186         },
17187         {
17188         .description = "pri_anti_spoof_ctl",
17189         .field_bit_size = 2,
17190         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17191         },
17192         {
17193         .description = "tpid_anti_spoof_ctl",
17194         .field_bit_size = 2,
17195         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17196         },
17197         /* class_tid: 3, wh_plus, table: ing_l2_cntxt_stagged_0 */
17198         {
17199         .description = "act_record_ptr",
17200         .field_bit_size = 16,
17201         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
17202         .result_operand = {
17203                 (BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR >> 8) & 0xff,
17204                 BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR & 0xff,
17205                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
17206                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
17207         },
17208         {
17209         .description = "reserved",
17210         .field_bit_size = 1,
17211         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17212         },
17213         {
17214         .description = "l2_byp_lkup_en",
17215         .field_bit_size = 1,
17216         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
17217         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
17218                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
17219         },
17220         {
17221         .description = "parif",
17222         .field_bit_size = 4,
17223         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17224         },
17225         {
17226         .description = "allowed_pri",
17227         .field_bit_size = 8,
17228         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17229         },
17230         {
17231         .description = "default_pri",
17232         .field_bit_size = 3,
17233         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17234         },
17235         {
17236         .description = "allowed_tpid",
17237         .field_bit_size = 6,
17238         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17239         },
17240         {
17241         .description = "default_tpid",
17242         .field_bit_size = 3,
17243         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17244         },
17245         {
17246         .description = "bd_act_en",
17247         .field_bit_size = 1,
17248         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17249         },
17250         {
17251         .description = "sp_rec_ptr",
17252         .field_bit_size = 16,
17253         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17254         },
17255         {
17256         .description = "byp_sp_lkup",
17257         .field_bit_size = 1,
17258         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
17259         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
17260                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
17261         },
17262         {
17263         .description = "pri_anti_spoof_ctl",
17264         .field_bit_size = 2,
17265         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17266         },
17267         {
17268         .description = "tpid_anti_spoof_ctl",
17269         .field_bit_size = 2,
17270         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17271         },
17272         /* class_tid: 4, wh_plus, table: egr_l2_cntxt_cache_0 */
17273         {
17274         .description = "l2_cntxt_id",
17275         .field_bit_size = 10,
17276         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
17277         .result_operand = {
17278                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
17279                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
17280                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
17281                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
17282         },
17283         /* class_tid: 4, wh_plus, table: egr_l2_cntxt_tcam_0 */
17284         {
17285         .description = "l2_cntxt_id",
17286         .field_bit_size = 10,
17287         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
17288         .result_operand = {
17289                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
17290                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
17291                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
17292                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
17293         },
17294         {
17295         .description = "prof_func_id",
17296         .field_bit_size = 7,
17297         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
17298         .result_operand = {
17299                 (BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID >> 8) & 0xff,
17300                 BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID & 0xff,
17301                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
17302                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
17303         },
17304         {
17305         .description = "l2_byp_lkup_en",
17306         .field_bit_size = 1,
17307         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17308         },
17309         {
17310         .description = "parif",
17311         .field_bit_size = 4,
17312         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
17313         .result_operand = {
17314                 BNXT_ULP_SYM_VF_FUNC_PARIF,
17315                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
17316                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
17317         },
17318         {
17319         .description = "allowed_pri",
17320         .field_bit_size = 8,
17321         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17322         },
17323         {
17324         .description = "default_pri",
17325         .field_bit_size = 3,
17326         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17327         },
17328         {
17329         .description = "allowed_tpid",
17330         .field_bit_size = 6,
17331         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17332         },
17333         {
17334         .description = "default_tpid",
17335         .field_bit_size = 3,
17336         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17337         },
17338         {
17339         .description = "bd_act_en",
17340         .field_bit_size = 1,
17341         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17342         },
17343         {
17344         .description = "sp_rec_ptr",
17345         .field_bit_size = 16,
17346         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17347         },
17348         {
17349         .description = "byp_sp_lkup",
17350         .field_bit_size = 1,
17351         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
17352         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
17353                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
17354         },
17355         {
17356         .description = "pri_anti_spoof_ctl",
17357         .field_bit_size = 2,
17358         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17359         },
17360         {
17361         .description = "tpid_anti_spoof_ctl",
17362         .field_bit_size = 2,
17363         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17364         },
17365         /* class_tid: 4, wh_plus, table: egr_parif_def_lkup_arec_ptr_0 */
17366         {
17367         .description = "act_rec_ptr",
17368         .field_bit_size = 32,
17369         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
17370         .result_operand = {
17371                 (BNXT_ULP_GLB_REGFILE_INDEX_GLB_LB_AREC_PTR >> 8) & 0xff,
17372                 BNXT_ULP_GLB_REGFILE_INDEX_GLB_LB_AREC_PTR & 0xff,
17373                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
17374                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
17375         },
17376         /* class_tid: 4, wh_plus, table: egr_parif_def_arec_ptr_0 */
17377         {
17378         .description = "act_rec_ptr",
17379         .field_bit_size = 32,
17380         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
17381         .result_operand = {
17382                 (BNXT_ULP_GLB_REGFILE_INDEX_GLB_LB_AREC_PTR >> 8) & 0xff,
17383                 BNXT_ULP_GLB_REGFILE_INDEX_GLB_LB_AREC_PTR & 0xff,
17384                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
17385                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
17386         },
17387         /* class_tid: 4, wh_plus, table: egr_parif_def_err_arec_ptr_0 */
17388         {
17389         .description = "act_rec_ptr",
17390         .field_bit_size = 32,
17391         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
17392         .result_operand = {
17393                 (BNXT_ULP_GLB_REGFILE_INDEX_GLB_LB_AREC_PTR >> 8) & 0xff,
17394                 BNXT_ULP_GLB_REGFILE_INDEX_GLB_LB_AREC_PTR & 0xff,
17395                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
17396                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
17397         },
17398         /* class_tid: 4, wh_plus, table: ing_int_full_act_record_0 */
17399         {
17400         .description = "flow_cntr_ptr",
17401         .field_bit_size = 14,
17402         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17403         },
17404         {
17405         .description = "age_enable",
17406         .field_bit_size = 1,
17407         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17408         },
17409         {
17410         .description = "agg_cntr_en",
17411         .field_bit_size = 1,
17412         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17413         },
17414         {
17415         .description = "rate_cntr_en",
17416         .field_bit_size = 1,
17417         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17418         },
17419         {
17420         .description = "flow_cntr_en",
17421         .field_bit_size = 1,
17422         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17423         },
17424         {
17425         .description = "tcpflags_key",
17426         .field_bit_size = 8,
17427         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17428         },
17429         {
17430         .description = "tcpflags_mir",
17431         .field_bit_size = 1,
17432         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17433         },
17434         {
17435         .description = "tcpflags_match",
17436         .field_bit_size = 1,
17437         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17438         },
17439         {
17440         .description = "encap_ptr",
17441         .field_bit_size = 11,
17442         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17443         },
17444         {
17445         .description = "dst_ip_ptr",
17446         .field_bit_size = 10,
17447         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17448         },
17449         {
17450         .description = "tcp_dst_port",
17451         .field_bit_size = 16,
17452         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17453         },
17454         {
17455         .description = "src_ip_ptr",
17456         .field_bit_size = 10,
17457         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17458         },
17459         {
17460         .description = "tcp_src_port",
17461         .field_bit_size = 16,
17462         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17463         },
17464         {
17465         .description = "meter_id",
17466         .field_bit_size = 10,
17467         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17468         },
17469         {
17470         .description = "l3_rdir",
17471         .field_bit_size = 1,
17472         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17473         },
17474         {
17475         .description = "tl3_rdir",
17476         .field_bit_size = 1,
17477         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17478         },
17479         {
17480         .description = "l3_ttl_dec",
17481         .field_bit_size = 1,
17482         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17483         },
17484         {
17485         .description = "tl3_ttl_dec",
17486         .field_bit_size = 1,
17487         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17488         },
17489         {
17490         .description = "decap_func",
17491         .field_bit_size = 4,
17492         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17493         },
17494         {
17495         .description = "vnic_or_vport",
17496         .field_bit_size = 12,
17497         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,
17498         .result_operand = {
17499                 (BNXT_ULP_CF_IDX_DRV_FUNC_VNIC >> 8) & 0xff,
17500                 BNXT_ULP_CF_IDX_DRV_FUNC_VNIC & 0xff,
17501                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
17502                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
17503         },
17504         {
17505         .description = "pop_vlan",
17506         .field_bit_size = 1,
17507         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17508         },
17509         {
17510         .description = "meter",
17511         .field_bit_size = 1,
17512         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17513         },
17514         {
17515         .description = "mirror",
17516         .field_bit_size = 2,
17517         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17518         },
17519         {
17520         .description = "drop",
17521         .field_bit_size = 1,
17522         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17523         },
17524         {
17525         .description = "hit",
17526         .field_bit_size = 1,
17527         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17528         },
17529         {
17530         .description = "type",
17531         .field_bit_size = 1,
17532         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17533         },
17534         /* class_tid: 4, wh_plus, table: ing_l2_cntxt_tcam_0 */
17535         {
17536         .description = "act_record_ptr",
17537         .field_bit_size = 16,
17538         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
17539         .result_operand = {
17540                 (BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR >> 8) & 0xff,
17541                 BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR & 0xff,
17542                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
17543                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
17544         },
17545         {
17546         .description = "reserved",
17547         .field_bit_size = 1,
17548         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17549         },
17550         {
17551         .description = "l2_byp_lkup_en",
17552         .field_bit_size = 1,
17553         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
17554         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
17555                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
17556         },
17557         {
17558         .description = "parif",
17559         .field_bit_size = 4,
17560         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17561         },
17562         {
17563         .description = "allowed_pri",
17564         .field_bit_size = 8,
17565         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17566         },
17567         {
17568         .description = "default_pri",
17569         .field_bit_size = 3,
17570         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17571         },
17572         {
17573         .description = "allowed_tpid",
17574         .field_bit_size = 6,
17575         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17576         },
17577         {
17578         .description = "default_tpid",
17579         .field_bit_size = 3,
17580         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17581         },
17582         {
17583         .description = "bd_act_en",
17584         .field_bit_size = 1,
17585         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17586         },
17587         {
17588         .description = "sp_rec_ptr",
17589         .field_bit_size = 16,
17590         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17591         },
17592         {
17593         .description = "byp_sp_lkup",
17594         .field_bit_size = 1,
17595         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
17596         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
17597                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
17598         },
17599         {
17600         .description = "pri_anti_spoof_ctl",
17601         .field_bit_size = 2,
17602         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17603         },
17604         {
17605         .description = "tpid_anti_spoof_ctl",
17606         .field_bit_size = 2,
17607         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17608         },
17609         /* class_tid: 5, wh_plus, table: int_full_act_record_0 */
17610         {
17611         .description = "flow_cntr_ptr",
17612         .field_bit_size = 14,
17613         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17614         },
17615         {
17616         .description = "age_enable",
17617         .field_bit_size = 1,
17618         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17619         },
17620         {
17621         .description = "agg_cntr_en",
17622         .field_bit_size = 1,
17623         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17624         },
17625         {
17626         .description = "rate_cntr_en",
17627         .field_bit_size = 1,
17628         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17629         },
17630         {
17631         .description = "flow_cntr_en",
17632         .field_bit_size = 1,
17633         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17634         },
17635         {
17636         .description = "tcpflags_key",
17637         .field_bit_size = 8,
17638         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17639         },
17640         {
17641         .description = "tcpflags_mir",
17642         .field_bit_size = 1,
17643         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17644         },
17645         {
17646         .description = "tcpflags_match",
17647         .field_bit_size = 1,
17648         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17649         },
17650         {
17651         .description = "encap_ptr",
17652         .field_bit_size = 11,
17653         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17654         },
17655         {
17656         .description = "dst_ip_ptr",
17657         .field_bit_size = 10,
17658         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17659         },
17660         {
17661         .description = "tcp_dst_port",
17662         .field_bit_size = 16,
17663         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17664         },
17665         {
17666         .description = "src_ip_ptr",
17667         .field_bit_size = 10,
17668         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17669         },
17670         {
17671         .description = "tcp_src_port",
17672         .field_bit_size = 16,
17673         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17674         },
17675         {
17676         .description = "meter_id",
17677         .field_bit_size = 10,
17678         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17679         },
17680         {
17681         .description = "l3_rdir",
17682         .field_bit_size = 1,
17683         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17684         },
17685         {
17686         .description = "tl3_rdir",
17687         .field_bit_size = 1,
17688         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17689         },
17690         {
17691         .description = "l3_ttl_dec",
17692         .field_bit_size = 1,
17693         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17694         },
17695         {
17696         .description = "tl3_ttl_dec",
17697         .field_bit_size = 1,
17698         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17699         },
17700         {
17701         .description = "decap_func",
17702         .field_bit_size = 4,
17703         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17704         },
17705         {
17706         .description = "vnic_or_vport",
17707         .field_bit_size = 12,
17708         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
17709         .result_operand = {
17710                 (BNXT_ULP_SYM_WH_PLUS_LOOPBACK_PORT >> 8) & 0xff,
17711                 BNXT_ULP_SYM_WH_PLUS_LOOPBACK_PORT & 0xff,
17712                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
17713                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
17714         },
17715         {
17716         .description = "pop_vlan",
17717         .field_bit_size = 1,
17718         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17719         },
17720         {
17721         .description = "meter",
17722         .field_bit_size = 1,
17723         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17724         },
17725         {
17726         .description = "mirror",
17727         .field_bit_size = 2,
17728         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17729         },
17730         {
17731         .description = "drop",
17732         .field_bit_size = 1,
17733         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17734         },
17735         {
17736         .description = "hit",
17737         .field_bit_size = 1,
17738         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17739         },
17740         {
17741         .description = "type",
17742         .field_bit_size = 1,
17743         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17744         },
17745         /* class_tid: 6, wh_plus, table: l2_cntxt_tcam_0 */
17746         {
17747         .description = "l2_cntxt_id",
17748         .field_bit_size = 10,
17749         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
17750         .result_operand = {
17751                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
17752                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
17753                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
17754                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
17755         },
17756         {
17757         .description = "prof_func_id",
17758         .field_bit_size = 7,
17759         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
17760         .result_operand = {
17761                 (BNXT_ULP_GLB_REGFILE_INDEX_L2_PROF_FUNC_ID >> 8) & 0xff,
17762                 BNXT_ULP_GLB_REGFILE_INDEX_L2_PROF_FUNC_ID & 0xff,
17763                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
17764                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
17765         },
17766         {
17767         .description = "l2_byp_lkup_en",
17768         .field_bit_size = 1,
17769         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17770         },
17771         {
17772         .description = "parif",
17773         .field_bit_size = 4,
17774         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,
17775         .result_operand = {
17776                 (BNXT_ULP_CF_IDX_PHY_PORT_PARIF >> 8) & 0xff,
17777                 BNXT_ULP_CF_IDX_PHY_PORT_PARIF & 0xff,
17778                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
17779                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
17780         },
17781         {
17782         .description = "allowed_pri",
17783         .field_bit_size = 8,
17784         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17785         },
17786         {
17787         .description = "default_pri",
17788         .field_bit_size = 3,
17789         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17790         },
17791         {
17792         .description = "allowed_tpid",
17793         .field_bit_size = 6,
17794         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17795         },
17796         {
17797         .description = "default_tpid",
17798         .field_bit_size = 3,
17799         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17800         },
17801         {
17802         .description = "bd_act_en",
17803         .field_bit_size = 1,
17804         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17805         },
17806         {
17807         .description = "sp_rec_ptr",
17808         .field_bit_size = 16,
17809         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17810         },
17811         {
17812         .description = "byp_sp_lkup",
17813         .field_bit_size = 1,
17814         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
17815         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
17816                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
17817         },
17818         {
17819         .description = "pri_anti_spoof_ctl",
17820         .field_bit_size = 2,
17821         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17822         },
17823         {
17824         .description = "tpid_anti_spoof_ctl",
17825         .field_bit_size = 2,
17826         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17827         },
17828         /* class_tid: 6, wh_plus, table: profile_tcam_cache_0 */
17829         {
17830         .description = "em_profile_id",
17831         .field_bit_size = 10,
17832         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
17833         .result_operand = {
17834                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
17835                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
17836                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
17837                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
17838         },
17839         /* class_tid: 6, wh_plus, table: profile_tcam_0 */
17840         {
17841         .description = "wc_key_id",
17842         .field_bit_size = 4,
17843         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17844         },
17845         {
17846         .description = "wc_profile_id",
17847         .field_bit_size = 8,
17848         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17849         },
17850         {
17851         .description = "wc_search_en",
17852         .field_bit_size = 1,
17853         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17854         },
17855         {
17856         .description = "em_key_mask",
17857         .field_bit_size = 10,
17858         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
17859         .result_operand = {
17860                 (0x0005 >> 8) & 0xff,
17861                 0x0005 & 0xff,
17862                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
17863                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
17864         },
17865         {
17866         .description = "em_key_id",
17867         .field_bit_size = 5,
17868         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
17869         .result_operand = {0x15, 0x00, 0x00, 0x00, 0x00, 0x00,
17870                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
17871         },
17872         {
17873         .description = "em_profile_id",
17874         .field_bit_size = 8,
17875         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
17876         .result_operand = {
17877                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
17878                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
17879                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
17880                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
17881         },
17882         {
17883         .description = "em_search_en",
17884         .field_bit_size = 1,
17885         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
17886         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
17887                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
17888         },
17889         {
17890         .description = "pl_byp_lkup_en",
17891         .field_bit_size = 1,
17892         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17893         },
17894         /* class_tid: 6, wh_plus, table: ext_em_0 */
17895         {
17896         .description = "act_rec_ptr",
17897         .field_bit_size = 33,
17898         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
17899         .result_operand = {
17900                 (BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR >> 8) & 0xff,
17901                 BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR & 0xff,
17902                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
17903                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
17904         },
17905         {
17906         .description = "ext_flow_ctr",
17907         .field_bit_size = 1,
17908         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
17909         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
17910                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
17911         },
17912         {
17913         .description = "act_rec_int",
17914         .field_bit_size = 1,
17915         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17916         },
17917         {
17918         .description = "act_rec_size",
17919         .field_bit_size = 5,
17920         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
17921         .result_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,
17922                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
17923         },
17924         {
17925         .description = "key_size",
17926         .field_bit_size = 9,
17927         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
17928         .result_operand = {
17929                 (0x00c5 >> 8) & 0xff,
17930                 0x00c5 & 0xff,
17931                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
17932                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
17933         },
17934         {
17935         .description = "reserved",
17936         .field_bit_size = 11,
17937         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17938         },
17939         {
17940         .description = "strength",
17941         .field_bit_size = 2,
17942         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
17943         .result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,
17944                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
17945         },
17946         {
17947         .description = "l1_cacheable",
17948         .field_bit_size = 1,
17949         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17950         },
17951         {
17952         .description = "valid",
17953         .field_bit_size = 1,
17954         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
17955         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
17956                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
17957         },
17958         /* class_tid: 6, wh_plus, table: int_em_0 */
17959         {
17960         .description = "act_rec_ptr",
17961         .field_bit_size = 33,
17962         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
17963         .result_operand = {
17964                 (BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR >> 8) & 0xff,
17965                 BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR & 0xff,
17966                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
17967                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
17968         },
17969         {
17970         .description = "ext_flow_ctr",
17971         .field_bit_size = 1,
17972         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
17973         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
17974                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
17975         },
17976         {
17977         .description = "act_rec_int",
17978         .field_bit_size = 1,
17979         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17980         },
17981         {
17982         .description = "act_rec_size",
17983         .field_bit_size = 5,
17984         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
17985         .result_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,
17986                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
17987         },
17988         {
17989         .description = "key_size",
17990         .field_bit_size = 9,
17991         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
17992         .result_operand = {
17993                 (0x00c5 >> 8) & 0xff,
17994                 0x00c5 & 0xff,
17995                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
17996                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
17997         },
17998         {
17999         .description = "reserved",
18000         .field_bit_size = 11,
18001         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18002         },
18003         {
18004         .description = "strength",
18005         .field_bit_size = 2,
18006         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
18007         .result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,
18008                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18009         },
18010         {
18011         .description = "l1_cacheable",
18012         .field_bit_size = 1,
18013         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18014         },
18015         {
18016         .description = "valid",
18017         .field_bit_size = 1,
18018         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
18019         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
18020                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18021         },
18022         /* class_tid: 7, wh_plus, table: l2_cntxt_tcam_0 */
18023         {
18024         .description = "l2_cntxt_id",
18025         .field_bit_size = 10,
18026         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
18027         .result_operand = {
18028                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
18029                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
18030                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
18031                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18032         },
18033         {
18034         .description = "prof_func_id",
18035         .field_bit_size = 7,
18036         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
18037         .result_operand = {
18038                 (BNXT_ULP_GLB_REGFILE_INDEX_L2_PROF_FUNC_ID >> 8) & 0xff,
18039                 BNXT_ULP_GLB_REGFILE_INDEX_L2_PROF_FUNC_ID & 0xff,
18040                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
18041                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18042         },
18043         {
18044         .description = "l2_byp_lkup_en",
18045         .field_bit_size = 1,
18046         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18047         },
18048         {
18049         .description = "parif",
18050         .field_bit_size = 4,
18051         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,
18052         .result_operand = {
18053                 (BNXT_ULP_CF_IDX_PHY_PORT_PARIF >> 8) & 0xff,
18054                 BNXT_ULP_CF_IDX_PHY_PORT_PARIF & 0xff,
18055                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
18056                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18057         },
18058         {
18059         .description = "allowed_pri",
18060         .field_bit_size = 8,
18061         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18062         },
18063         {
18064         .description = "default_pri",
18065         .field_bit_size = 3,
18066         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18067         },
18068         {
18069         .description = "allowed_tpid",
18070         .field_bit_size = 6,
18071         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18072         },
18073         {
18074         .description = "default_tpid",
18075         .field_bit_size = 3,
18076         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18077         },
18078         {
18079         .description = "bd_act_en",
18080         .field_bit_size = 1,
18081         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18082         },
18083         {
18084         .description = "sp_rec_ptr",
18085         .field_bit_size = 16,
18086         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18087         },
18088         {
18089         .description = "byp_sp_lkup",
18090         .field_bit_size = 1,
18091         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
18092         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
18093                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18094         },
18095         {
18096         .description = "pri_anti_spoof_ctl",
18097         .field_bit_size = 2,
18098         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18099         },
18100         {
18101         .description = "tpid_anti_spoof_ctl",
18102         .field_bit_size = 2,
18103         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18104         },
18105         /* class_tid: 7, wh_plus, table: profile_tcam_cache_0 */
18106         {
18107         .description = "em_profile_id",
18108         .field_bit_size = 10,
18109         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
18110         .result_operand = {
18111                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
18112                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
18113                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
18114                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18115         },
18116         /* class_tid: 7, wh_plus, table: profile_tcam_0 */
18117         {
18118         .description = "wc_key_id",
18119         .field_bit_size = 4,
18120         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18121         },
18122         {
18123         .description = "wc_profile_id",
18124         .field_bit_size = 8,
18125         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18126         },
18127         {
18128         .description = "wc_search_en",
18129         .field_bit_size = 1,
18130         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18131         },
18132         {
18133         .description = "em_key_mask",
18134         .field_bit_size = 10,
18135         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
18136         .result_operand = {
18137                 (0x0005 >> 8) & 0xff,
18138                 0x0005 & 0xff,
18139                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
18140                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18141         },
18142         {
18143         .description = "em_key_id",
18144         .field_bit_size = 5,
18145         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
18146         .result_operand = {0x15, 0x00, 0x00, 0x00, 0x00, 0x00,
18147                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18148         },
18149         {
18150         .description = "em_profile_id",
18151         .field_bit_size = 8,
18152         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
18153         .result_operand = {
18154                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
18155                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
18156                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
18157                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18158         },
18159         {
18160         .description = "em_search_en",
18161         .field_bit_size = 1,
18162         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
18163         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
18164                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18165         },
18166         {
18167         .description = "pl_byp_lkup_en",
18168         .field_bit_size = 1,
18169         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18170         },
18171         /* class_tid: 7, wh_plus, table: ext_em_0 */
18172         {
18173         .description = "act_rec_ptr",
18174         .field_bit_size = 33,
18175         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
18176         .result_operand = {
18177                 (BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR >> 8) & 0xff,
18178                 BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR & 0xff,
18179                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
18180                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18181         },
18182         {
18183         .description = "ext_flow_ctr",
18184         .field_bit_size = 1,
18185         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
18186         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
18187                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18188         },
18189         {
18190         .description = "act_rec_int",
18191         .field_bit_size = 1,
18192         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18193         },
18194         {
18195         .description = "act_rec_size",
18196         .field_bit_size = 5,
18197         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
18198         .result_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,
18199                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18200         },
18201         {
18202         .description = "key_size",
18203         .field_bit_size = 9,
18204         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
18205         .result_operand = {
18206                 (0x00c5 >> 8) & 0xff,
18207                 0x00c5 & 0xff,
18208                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
18209                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18210         },
18211         {
18212         .description = "reserved",
18213         .field_bit_size = 11,
18214         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18215         },
18216         {
18217         .description = "strength",
18218         .field_bit_size = 2,
18219         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
18220         .result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,
18221                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18222         },
18223         {
18224         .description = "l1_cacheable",
18225         .field_bit_size = 1,
18226         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18227         },
18228         {
18229         .description = "valid",
18230         .field_bit_size = 1,
18231         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
18232         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
18233                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18234         },
18235         /* class_tid: 7, wh_plus, table: int_em_0 */
18236         {
18237         .description = "act_rec_ptr",
18238         .field_bit_size = 33,
18239         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
18240         .result_operand = {
18241                 (BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR >> 8) & 0xff,
18242                 BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR & 0xff,
18243                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
18244                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18245         },
18246         {
18247         .description = "ext_flow_ctr",
18248         .field_bit_size = 1,
18249         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
18250         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
18251                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18252         },
18253         {
18254         .description = "act_rec_int",
18255         .field_bit_size = 1,
18256         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18257         },
18258         {
18259         .description = "act_rec_size",
18260         .field_bit_size = 5,
18261         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
18262         .result_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,
18263                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18264         },
18265         {
18266         .description = "key_size",
18267         .field_bit_size = 9,
18268         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
18269         .result_operand = {
18270                 (0x00c5 >> 8) & 0xff,
18271                 0x00c5 & 0xff,
18272                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
18273                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18274         },
18275         {
18276         .description = "reserved",
18277         .field_bit_size = 11,
18278         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18279         },
18280         {
18281         .description = "strength",
18282         .field_bit_size = 2,
18283         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
18284         .result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,
18285                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18286         },
18287         {
18288         .description = "l1_cacheable",
18289         .field_bit_size = 1,
18290         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18291         },
18292         {
18293         .description = "valid",
18294         .field_bit_size = 1,
18295         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
18296         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
18297                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18298         },
18299         /* class_tid: 8, wh_plus, table: l2_cntxt_cache_0 */
18300         {
18301         .description = "l2_cntxt_id",
18302         .field_bit_size = 10,
18303         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
18304         .result_operand = {
18305                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
18306                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
18307                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
18308                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18309         },
18310         /* class_tid: 8, wh_plus, table: l2_cntxt_tcam_0 */
18311         {
18312         .description = "l2_cntxt_id",
18313         .field_bit_size = 10,
18314         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
18315         .result_operand = {
18316                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
18317                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
18318                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
18319                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18320         },
18321         {
18322         .description = "prof_func_id",
18323         .field_bit_size = 7,
18324         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
18325         .result_operand = {
18326                 (BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID >> 8) & 0xff,
18327                 BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID & 0xff,
18328                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
18329                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18330         },
18331         {
18332         .description = "l2_byp_lkup_en",
18333         .field_bit_size = 1,
18334         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18335         },
18336         {
18337         .description = "parif",
18338         .field_bit_size = 4,
18339         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,
18340         .result_operand = {
18341                 (BNXT_ULP_CF_IDX_PHY_PORT_PARIF >> 8) & 0xff,
18342                 BNXT_ULP_CF_IDX_PHY_PORT_PARIF & 0xff,
18343                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
18344                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18345         },
18346         {
18347         .description = "allowed_pri",
18348         .field_bit_size = 8,
18349         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18350         },
18351         {
18352         .description = "default_pri",
18353         .field_bit_size = 3,
18354         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18355         },
18356         {
18357         .description = "allowed_tpid",
18358         .field_bit_size = 6,
18359         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18360         },
18361         {
18362         .description = "default_tpid",
18363         .field_bit_size = 3,
18364         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18365         },
18366         {
18367         .description = "bd_act_en",
18368         .field_bit_size = 1,
18369         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18370         },
18371         {
18372         .description = "sp_rec_ptr",
18373         .field_bit_size = 16,
18374         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18375         },
18376         {
18377         .description = "byp_sp_lkup",
18378         .field_bit_size = 1,
18379         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
18380         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
18381                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18382         },
18383         {
18384         .description = "pri_anti_spoof_ctl",
18385         .field_bit_size = 2,
18386         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18387         },
18388         {
18389         .description = "tpid_anti_spoof_ctl",
18390         .field_bit_size = 2,
18391         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18392         },
18393         /* class_tid: 8, wh_plus, table: profile_tcam_cache_0 */
18394         {
18395         .description = "em_profile_id",
18396         .field_bit_size = 10,
18397         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
18398         .result_operand = {
18399                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
18400                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
18401                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
18402                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18403         },
18404         /* class_tid: 8, wh_plus, table: profile_tcam_0 */
18405         {
18406         .description = "wc_key_id",
18407         .field_bit_size = 4,
18408         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18409         },
18410         {
18411         .description = "wc_profile_id",
18412         .field_bit_size = 8,
18413         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18414         },
18415         {
18416         .description = "wc_search_en",
18417         .field_bit_size = 1,
18418         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18419         },
18420         {
18421         .description = "em_key_mask",
18422         .field_bit_size = 10,
18423         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
18424         .result_operand = {
18425                 (0x00f9 >> 8) & 0xff,
18426                 0x00f9 & 0xff,
18427                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
18428                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18429         },
18430         {
18431         .description = "em_key_id",
18432         .field_bit_size = 5,
18433         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
18434         .result_operand = {0x15, 0x00, 0x00, 0x00, 0x00, 0x00,
18435                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18436         },
18437         {
18438         .description = "em_profile_id",
18439         .field_bit_size = 8,
18440         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
18441         .result_operand = {
18442                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
18443                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
18444                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
18445                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18446         },
18447         {
18448         .description = "em_search_en",
18449         .field_bit_size = 1,
18450         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
18451         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
18452                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18453         },
18454         {
18455         .description = "pl_byp_lkup_en",
18456         .field_bit_size = 1,
18457         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18458         },
18459         /* class_tid: 8, wh_plus, table: ext_em_0 */
18460         {
18461         .description = "act_rec_ptr",
18462         .field_bit_size = 33,
18463         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
18464         .result_operand = {
18465                 (BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR >> 8) & 0xff,
18466                 BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR & 0xff,
18467                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
18468                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18469         },
18470         {
18471         .description = "ext_flow_ctr",
18472         .field_bit_size = 1,
18473         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
18474         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
18475                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18476         },
18477         {
18478         .description = "act_rec_int",
18479         .field_bit_size = 1,
18480         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18481         },
18482         {
18483         .description = "act_rec_size",
18484         .field_bit_size = 5,
18485         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
18486         .result_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,
18487                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18488         },
18489         {
18490         .description = "key_size",
18491         .field_bit_size = 9,
18492         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
18493         .result_operand = {
18494                 (0x00c5 >> 8) & 0xff,
18495                 0x00c5 & 0xff,
18496                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
18497                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18498         },
18499         {
18500         .description = "reserved",
18501         .field_bit_size = 11,
18502         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18503         },
18504         {
18505         .description = "strength",
18506         .field_bit_size = 2,
18507         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
18508         .result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,
18509                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18510         },
18511         {
18512         .description = "l1_cacheable",
18513         .field_bit_size = 1,
18514         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18515         },
18516         {
18517         .description = "valid",
18518         .field_bit_size = 1,
18519         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
18520         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
18521                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18522         },
18523         /* class_tid: 8, wh_plus, table: int_em_0 */
18524         {
18525         .description = "act_rec_ptr",
18526         .field_bit_size = 33,
18527         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
18528         .result_operand = {
18529                 (BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR >> 8) & 0xff,
18530                 BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR & 0xff,
18531                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
18532                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18533         },
18534         {
18535         .description = "ext_flow_ctr",
18536         .field_bit_size = 1,
18537         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
18538         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
18539                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18540         },
18541         {
18542         .description = "act_rec_int",
18543         .field_bit_size = 1,
18544         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18545         },
18546         {
18547         .description = "act_rec_size",
18548         .field_bit_size = 5,
18549         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
18550         .result_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,
18551                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18552         },
18553         {
18554         .description = "key_size",
18555         .field_bit_size = 9,
18556         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
18557         .result_operand = {
18558                 (0x00c5 >> 8) & 0xff,
18559                 0x00c5 & 0xff,
18560                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
18561                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18562         },
18563         {
18564         .description = "reserved",
18565         .field_bit_size = 11,
18566         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18567         },
18568         {
18569         .description = "strength",
18570         .field_bit_size = 2,
18571         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
18572         .result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,
18573                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18574         },
18575         {
18576         .description = "l1_cacheable",
18577         .field_bit_size = 1,
18578         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18579         },
18580         {
18581         .description = "valid",
18582         .field_bit_size = 1,
18583         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
18584         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
18585                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18586         },
18587         /* class_tid: 9, wh_plus, table: l2_cntxt_cache_0 */
18588         {
18589         .description = "l2_cntxt_id",
18590         .field_bit_size = 10,
18591         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
18592         .result_operand = {
18593                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
18594                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
18595                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
18596                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18597         },
18598         /* class_tid: 9, wh_plus, table: l2_cntxt_tcam_0 */
18599         {
18600         .description = "l2_cntxt_id",
18601         .field_bit_size = 10,
18602         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
18603         .result_operand = {
18604                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
18605                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
18606                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
18607                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18608         },
18609         {
18610         .description = "prof_func_id",
18611         .field_bit_size = 7,
18612         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
18613         .result_operand = {
18614                 (BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID >> 8) & 0xff,
18615                 BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID & 0xff,
18616                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
18617                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18618         },
18619         {
18620         .description = "l2_byp_lkup_en",
18621         .field_bit_size = 1,
18622         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18623         },
18624         {
18625         .description = "parif",
18626         .field_bit_size = 4,
18627         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,
18628         .result_operand = {
18629                 (BNXT_ULP_CF_IDX_PHY_PORT_PARIF >> 8) & 0xff,
18630                 BNXT_ULP_CF_IDX_PHY_PORT_PARIF & 0xff,
18631                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
18632                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18633         },
18634         {
18635         .description = "allowed_pri",
18636         .field_bit_size = 8,
18637         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18638         },
18639         {
18640         .description = "default_pri",
18641         .field_bit_size = 3,
18642         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18643         },
18644         {
18645         .description = "allowed_tpid",
18646         .field_bit_size = 6,
18647         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18648         },
18649         {
18650         .description = "default_tpid",
18651         .field_bit_size = 3,
18652         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18653         },
18654         {
18655         .description = "bd_act_en",
18656         .field_bit_size = 1,
18657         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18658         },
18659         {
18660         .description = "sp_rec_ptr",
18661         .field_bit_size = 16,
18662         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18663         },
18664         {
18665         .description = "byp_sp_lkup",
18666         .field_bit_size = 1,
18667         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
18668         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
18669                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18670         },
18671         {
18672         .description = "pri_anti_spoof_ctl",
18673         .field_bit_size = 2,
18674         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18675         },
18676         {
18677         .description = "tpid_anti_spoof_ctl",
18678         .field_bit_size = 2,
18679         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18680         },
18681         /* class_tid: 9, wh_plus, table: profile_tcam_cache_0 */
18682         {
18683         .description = "em_profile_id",
18684         .field_bit_size = 10,
18685         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
18686         .result_operand = {
18687                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
18688                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
18689                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
18690                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18691         },
18692         /* class_tid: 9, wh_plus, table: profile_tcam_0 */
18693         {
18694         .description = "wc_key_id",
18695         .field_bit_size = 4,
18696         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18697         },
18698         {
18699         .description = "wc_profile_id",
18700         .field_bit_size = 8,
18701         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18702         },
18703         {
18704         .description = "wc_search_en",
18705         .field_bit_size = 1,
18706         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18707         },
18708         {
18709         .description = "em_key_mask",
18710         .field_bit_size = 10,
18711         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
18712         .result_operand = {
18713                 (0x00f9 >> 8) & 0xff,
18714                 0x00f9 & 0xff,
18715                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
18716                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18717         },
18718         {
18719         .description = "em_key_id",
18720         .field_bit_size = 5,
18721         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
18722         .result_operand = {0x15, 0x00, 0x00, 0x00, 0x00, 0x00,
18723                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18724         },
18725         {
18726         .description = "em_profile_id",
18727         .field_bit_size = 8,
18728         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
18729         .result_operand = {
18730                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
18731                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
18732                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
18733                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18734         },
18735         {
18736         .description = "em_search_en",
18737         .field_bit_size = 1,
18738         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
18739         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
18740                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18741         },
18742         {
18743         .description = "pl_byp_lkup_en",
18744         .field_bit_size = 1,
18745         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18746         },
18747         /* class_tid: 9, wh_plus, table: ext_em_0 */
18748         {
18749         .description = "act_rec_ptr",
18750         .field_bit_size = 33,
18751         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
18752         .result_operand = {
18753                 (BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR >> 8) & 0xff,
18754                 BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR & 0xff,
18755                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
18756                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18757         },
18758         {
18759         .description = "ext_flow_ctr",
18760         .field_bit_size = 1,
18761         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
18762         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
18763                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18764         },
18765         {
18766         .description = "act_rec_int",
18767         .field_bit_size = 1,
18768         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18769         },
18770         {
18771         .description = "act_rec_size",
18772         .field_bit_size = 5,
18773         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
18774         .result_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,
18775                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18776         },
18777         {
18778         .description = "key_size",
18779         .field_bit_size = 9,
18780         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
18781         .result_operand = {
18782                 (0x00c5 >> 8) & 0xff,
18783                 0x00c5 & 0xff,
18784                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
18785                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18786         },
18787         {
18788         .description = "reserved",
18789         .field_bit_size = 11,
18790         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18791         },
18792         {
18793         .description = "strength",
18794         .field_bit_size = 2,
18795         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
18796         .result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,
18797                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18798         },
18799         {
18800         .description = "l1_cacheable",
18801         .field_bit_size = 1,
18802         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18803         },
18804         {
18805         .description = "valid",
18806         .field_bit_size = 1,
18807         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
18808         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
18809                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18810         },
18811         /* class_tid: 9, wh_plus, table: int_em_0 */
18812         {
18813         .description = "act_rec_ptr",
18814         .field_bit_size = 33,
18815         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
18816         .result_operand = {
18817                 (BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR >> 8) & 0xff,
18818                 BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR & 0xff,
18819                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
18820                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18821         },
18822         {
18823         .description = "ext_flow_ctr",
18824         .field_bit_size = 1,
18825         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
18826         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
18827                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18828         },
18829         {
18830         .description = "act_rec_int",
18831         .field_bit_size = 1,
18832         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18833         },
18834         {
18835         .description = "act_rec_size",
18836         .field_bit_size = 5,
18837         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
18838         .result_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,
18839                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18840         },
18841         {
18842         .description = "key_size",
18843         .field_bit_size = 9,
18844         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
18845         .result_operand = {
18846                 (0x00c5 >> 8) & 0xff,
18847                 0x00c5 & 0xff,
18848                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
18849                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18850         },
18851         {
18852         .description = "reserved",
18853         .field_bit_size = 11,
18854         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18855         },
18856         {
18857         .description = "strength",
18858         .field_bit_size = 2,
18859         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
18860         .result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,
18861                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18862         },
18863         {
18864         .description = "l1_cacheable",
18865         .field_bit_size = 1,
18866         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18867         },
18868         {
18869         .description = "valid",
18870         .field_bit_size = 1,
18871         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
18872         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
18873                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18874         },
18875         /* class_tid: 10, wh_plus, table: l2_cntxt_cache_0 */
18876         {
18877         .description = "l2_cntxt_id",
18878         .field_bit_size = 10,
18879         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
18880         .result_operand = {
18881                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
18882                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
18883                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
18884                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18885         },
18886         /* class_tid: 10, wh_plus, table: l2_cntxt_tcam_0 */
18887         {
18888         .description = "l2_cntxt_id",
18889         .field_bit_size = 10,
18890         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
18891         .result_operand = {
18892                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
18893                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
18894                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
18895                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18896         },
18897         {
18898         .description = "prof_func_id",
18899         .field_bit_size = 7,
18900         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
18901         .result_operand = {
18902                 (BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID >> 8) & 0xff,
18903                 BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID & 0xff,
18904                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
18905                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18906         },
18907         {
18908         .description = "l2_byp_lkup_en",
18909         .field_bit_size = 1,
18910         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18911         },
18912         {
18913         .description = "parif",
18914         .field_bit_size = 4,
18915         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,
18916         .result_operand = {
18917                 (BNXT_ULP_CF_IDX_PHY_PORT_PARIF >> 8) & 0xff,
18918                 BNXT_ULP_CF_IDX_PHY_PORT_PARIF & 0xff,
18919                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
18920                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18921         },
18922         {
18923         .description = "allowed_pri",
18924         .field_bit_size = 8,
18925         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18926         },
18927         {
18928         .description = "default_pri",
18929         .field_bit_size = 3,
18930         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18931         },
18932         {
18933         .description = "allowed_tpid",
18934         .field_bit_size = 6,
18935         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18936         },
18937         {
18938         .description = "default_tpid",
18939         .field_bit_size = 3,
18940         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18941         },
18942         {
18943         .description = "bd_act_en",
18944         .field_bit_size = 1,
18945         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18946         },
18947         {
18948         .description = "sp_rec_ptr",
18949         .field_bit_size = 16,
18950         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18951         },
18952         {
18953         .description = "byp_sp_lkup",
18954         .field_bit_size = 1,
18955         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
18956         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
18957                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18958         },
18959         {
18960         .description = "pri_anti_spoof_ctl",
18961         .field_bit_size = 2,
18962         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18963         },
18964         {
18965         .description = "tpid_anti_spoof_ctl",
18966         .field_bit_size = 2,
18967         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18968         },
18969         /* class_tid: 10, wh_plus, table: profile_tcam_cache_0 */
18970         {
18971         .description = "em_profile_id",
18972         .field_bit_size = 10,
18973         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
18974         .result_operand = {
18975                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
18976                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
18977                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
18978                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18979         },
18980         /* class_tid: 10, wh_plus, table: profile_tcam_0 */
18981         {
18982         .description = "wc_key_id",
18983         .field_bit_size = 4,
18984         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18985         },
18986         {
18987         .description = "wc_profile_id",
18988         .field_bit_size = 8,
18989         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18990         },
18991         {
18992         .description = "wc_search_en",
18993         .field_bit_size = 1,
18994         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18995         },
18996         {
18997         .description = "em_key_mask",
18998         .field_bit_size = 10,
18999         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
19000         .result_operand = {
19001                 (0x00f9 >> 8) & 0xff,
19002                 0x00f9 & 0xff,
19003                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
19004                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19005         },
19006         {
19007         .description = "em_key_id",
19008         .field_bit_size = 5,
19009         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
19010         .result_operand = {0x19, 0x00, 0x00, 0x00, 0x00, 0x00,
19011                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19012         },
19013         {
19014         .description = "em_profile_id",
19015         .field_bit_size = 8,
19016         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
19017         .result_operand = {
19018                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
19019                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
19020                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
19021                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19022         },
19023         {
19024         .description = "em_search_en",
19025         .field_bit_size = 1,
19026         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
19027         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
19028                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19029         },
19030         {
19031         .description = "pl_byp_lkup_en",
19032         .field_bit_size = 1,
19033         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19034         },
19035         /* class_tid: 10, wh_plus, table: ext_em_0 */
19036         {
19037         .description = "act_rec_ptr",
19038         .field_bit_size = 33,
19039         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
19040         .result_operand = {
19041                 (BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR >> 8) & 0xff,
19042                 BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR & 0xff,
19043                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
19044                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19045         },
19046         {
19047         .description = "ext_flow_ctr",
19048         .field_bit_size = 1,
19049         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
19050         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
19051                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19052         },
19053         {
19054         .description = "act_rec_int",
19055         .field_bit_size = 1,
19056         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19057         },
19058         {
19059         .description = "act_rec_size",
19060         .field_bit_size = 5,
19061         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
19062         .result_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,
19063                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19064         },
19065         {
19066         .description = "key_size",
19067         .field_bit_size = 9,
19068         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
19069         .result_operand = {
19070                 (0x0185 >> 8) & 0xff,
19071                 0x0185 & 0xff,
19072                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
19073                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19074         },
19075         {
19076         .description = "reserved",
19077         .field_bit_size = 11,
19078         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19079         },
19080         {
19081         .description = "strength",
19082         .field_bit_size = 2,
19083         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
19084         .result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,
19085                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19086         },
19087         {
19088         .description = "l1_cacheable",
19089         .field_bit_size = 1,
19090         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19091         },
19092         {
19093         .description = "valid",
19094         .field_bit_size = 1,
19095         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
19096         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
19097                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19098         },
19099         /* class_tid: 10, wh_plus, table: int_em_0 */
19100         {
19101         .description = "act_rec_ptr",
19102         .field_bit_size = 33,
19103         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
19104         .result_operand = {
19105                 (BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR >> 8) & 0xff,
19106                 BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR & 0xff,
19107                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
19108                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19109         },
19110         {
19111         .description = "ext_flow_ctr",
19112         .field_bit_size = 1,
19113         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
19114         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
19115                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19116         },
19117         {
19118         .description = "act_rec_int",
19119         .field_bit_size = 1,
19120         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19121         },
19122         {
19123         .description = "act_rec_size",
19124         .field_bit_size = 5,
19125         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
19126         .result_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,
19127                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19128         },
19129         {
19130         .description = "key_size",
19131         .field_bit_size = 9,
19132         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
19133         .result_operand = {
19134                 (0x0185 >> 8) & 0xff,
19135                 0x0185 & 0xff,
19136                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
19137                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19138         },
19139         {
19140         .description = "reserved",
19141         .field_bit_size = 11,
19142         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19143         },
19144         {
19145         .description = "strength",
19146         .field_bit_size = 2,
19147         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
19148         .result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,
19149                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19150         },
19151         {
19152         .description = "l1_cacheable",
19153         .field_bit_size = 1,
19154         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19155         },
19156         {
19157         .description = "valid",
19158         .field_bit_size = 1,
19159         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
19160         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
19161                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19162         },
19163         /* class_tid: 11, wh_plus, table: l2_cntxt_cache_0 */
19164         {
19165         .description = "l2_cntxt_id",
19166         .field_bit_size = 10,
19167         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
19168         .result_operand = {
19169                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
19170                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
19171                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
19172                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19173         },
19174         /* class_tid: 11, wh_plus, table: l2_cntxt_tcam_0 */
19175         {
19176         .description = "l2_cntxt_id",
19177         .field_bit_size = 10,
19178         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
19179         .result_operand = {
19180                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
19181                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
19182                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
19183                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19184         },
19185         {
19186         .description = "prof_func_id",
19187         .field_bit_size = 7,
19188         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
19189         .result_operand = {
19190                 (BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID >> 8) & 0xff,
19191                 BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID & 0xff,
19192                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
19193                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19194         },
19195         {
19196         .description = "l2_byp_lkup_en",
19197         .field_bit_size = 1,
19198         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19199         },
19200         {
19201         .description = "parif",
19202         .field_bit_size = 4,
19203         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,
19204         .result_operand = {
19205                 (BNXT_ULP_CF_IDX_PHY_PORT_PARIF >> 8) & 0xff,
19206                 BNXT_ULP_CF_IDX_PHY_PORT_PARIF & 0xff,
19207                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
19208                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19209         },
19210         {
19211         .description = "allowed_pri",
19212         .field_bit_size = 8,
19213         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19214         },
19215         {
19216         .description = "default_pri",
19217         .field_bit_size = 3,
19218         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19219         },
19220         {
19221         .description = "allowed_tpid",
19222         .field_bit_size = 6,
19223         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19224         },
19225         {
19226         .description = "default_tpid",
19227         .field_bit_size = 3,
19228         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19229         },
19230         {
19231         .description = "bd_act_en",
19232         .field_bit_size = 1,
19233         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19234         },
19235         {
19236         .description = "sp_rec_ptr",
19237         .field_bit_size = 16,
19238         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19239         },
19240         {
19241         .description = "byp_sp_lkup",
19242         .field_bit_size = 1,
19243         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
19244         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
19245                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19246         },
19247         {
19248         .description = "pri_anti_spoof_ctl",
19249         .field_bit_size = 2,
19250         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19251         },
19252         {
19253         .description = "tpid_anti_spoof_ctl",
19254         .field_bit_size = 2,
19255         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19256         },
19257         /* class_tid: 11, wh_plus, table: profile_tcam_cache_0 */
19258         {
19259         .description = "em_profile_id",
19260         .field_bit_size = 10,
19261         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
19262         .result_operand = {
19263                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
19264                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
19265                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
19266                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19267         },
19268         /* class_tid: 11, wh_plus, table: profile_tcam_0 */
19269         {
19270         .description = "wc_key_id",
19271         .field_bit_size = 4,
19272         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19273         },
19274         {
19275         .description = "wc_profile_id",
19276         .field_bit_size = 8,
19277         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19278         },
19279         {
19280         .description = "wc_search_en",
19281         .field_bit_size = 1,
19282         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19283         },
19284         {
19285         .description = "em_key_mask",
19286         .field_bit_size = 10,
19287         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
19288         .result_operand = {
19289                 (0x00f9 >> 8) & 0xff,
19290                 0x00f9 & 0xff,
19291                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
19292                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19293         },
19294         {
19295         .description = "em_key_id",
19296         .field_bit_size = 5,
19297         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
19298         .result_operand = {0x19, 0x00, 0x00, 0x00, 0x00, 0x00,
19299                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19300         },
19301         {
19302         .description = "em_profile_id",
19303         .field_bit_size = 8,
19304         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
19305         .result_operand = {
19306                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
19307                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
19308                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
19309                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19310         },
19311         {
19312         .description = "em_search_en",
19313         .field_bit_size = 1,
19314         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
19315         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
19316                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19317         },
19318         {
19319         .description = "pl_byp_lkup_en",
19320         .field_bit_size = 1,
19321         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19322         },
19323         /* class_tid: 11, wh_plus, table: ext_em_0 */
19324         {
19325         .description = "act_rec_ptr",
19326         .field_bit_size = 33,
19327         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
19328         .result_operand = {
19329                 (BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR >> 8) & 0xff,
19330                 BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR & 0xff,
19331                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
19332                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19333         },
19334         {
19335         .description = "ext_flow_ctr",
19336         .field_bit_size = 1,
19337         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
19338         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
19339                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19340         },
19341         {
19342         .description = "act_rec_int",
19343         .field_bit_size = 1,
19344         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19345         },
19346         {
19347         .description = "act_rec_size",
19348         .field_bit_size = 5,
19349         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
19350         .result_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,
19351                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19352         },
19353         {
19354         .description = "key_size",
19355         .field_bit_size = 9,
19356         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
19357         .result_operand = {
19358                 (0x0185 >> 8) & 0xff,
19359                 0x0185 & 0xff,
19360                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
19361                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19362         },
19363         {
19364         .description = "reserved",
19365         .field_bit_size = 11,
19366         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19367         },
19368         {
19369         .description = "strength",
19370         .field_bit_size = 2,
19371         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
19372         .result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,
19373                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19374         },
19375         {
19376         .description = "l1_cacheable",
19377         .field_bit_size = 1,
19378         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19379         },
19380         {
19381         .description = "valid",
19382         .field_bit_size = 1,
19383         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
19384         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
19385                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19386         },
19387         /* class_tid: 11, wh_plus, table: int_em_0 */
19388         {
19389         .description = "act_rec_ptr",
19390         .field_bit_size = 33,
19391         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
19392         .result_operand = {
19393                 (BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR >> 8) & 0xff,
19394                 BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR & 0xff,
19395                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
19396                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19397         },
19398         {
19399         .description = "ext_flow_ctr",
19400         .field_bit_size = 1,
19401         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
19402         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
19403                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19404         },
19405         {
19406         .description = "act_rec_int",
19407         .field_bit_size = 1,
19408         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19409         },
19410         {
19411         .description = "act_rec_size",
19412         .field_bit_size = 5,
19413         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
19414         .result_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,
19415                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19416         },
19417         {
19418         .description = "key_size",
19419         .field_bit_size = 9,
19420         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
19421         .result_operand = {
19422                 (0x0185 >> 8) & 0xff,
19423                 0x0185 & 0xff,
19424                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
19425                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19426         },
19427         {
19428         .description = "reserved",
19429         .field_bit_size = 11,
19430         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19431         },
19432         {
19433         .description = "strength",
19434         .field_bit_size = 2,
19435         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
19436         .result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,
19437                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19438         },
19439         {
19440         .description = "l1_cacheable",
19441         .field_bit_size = 1,
19442         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19443         },
19444         {
19445         .description = "valid",
19446         .field_bit_size = 1,
19447         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
19448         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
19449                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19450         },
19451         /* class_tid: 12, wh_plus, table: l2_cntxt_tcam_0 */
19452         {
19453         .description = "l2_cntxt_id",
19454         .field_bit_size = 10,
19455         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
19456         .result_operand = {
19457                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
19458                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
19459                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
19460                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19461         },
19462         {
19463         .description = "prof_func_id",
19464         .field_bit_size = 7,
19465         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
19466         .result_operand = {
19467                 (BNXT_ULP_GLB_REGFILE_INDEX_L2_PROF_FUNC_ID >> 8) & 0xff,
19468                 BNXT_ULP_GLB_REGFILE_INDEX_L2_PROF_FUNC_ID & 0xff,
19469                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
19470                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19471         },
19472         {
19473         .description = "l2_byp_lkup_en",
19474         .field_bit_size = 1,
19475         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19476         },
19477         {
19478         .description = "parif",
19479         .field_bit_size = 4,
19480         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,
19481         .result_operand = {
19482                 (BNXT_ULP_CF_IDX_PHY_PORT_PARIF >> 8) & 0xff,
19483                 BNXT_ULP_CF_IDX_PHY_PORT_PARIF & 0xff,
19484                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
19485                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19486         },
19487         {
19488         .description = "allowed_pri",
19489         .field_bit_size = 8,
19490         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19491         },
19492         {
19493         .description = "default_pri",
19494         .field_bit_size = 3,
19495         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19496         },
19497         {
19498         .description = "allowed_tpid",
19499         .field_bit_size = 6,
19500         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19501         },
19502         {
19503         .description = "default_tpid",
19504         .field_bit_size = 3,
19505         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19506         },
19507         {
19508         .description = "bd_act_en",
19509         .field_bit_size = 1,
19510         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19511         },
19512         {
19513         .description = "sp_rec_ptr",
19514         .field_bit_size = 16,
19515         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19516         },
19517         {
19518         .description = "byp_sp_lkup",
19519         .field_bit_size = 1,
19520         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
19521         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
19522                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19523         },
19524         {
19525         .description = "pri_anti_spoof_ctl",
19526         .field_bit_size = 2,
19527         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19528         },
19529         {
19530         .description = "tpid_anti_spoof_ctl",
19531         .field_bit_size = 2,
19532         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19533         },
19534         /* class_tid: 12, wh_plus, table: profile_tcam_cache_0 */
19535         {
19536         .description = "em_profile_id",
19537         .field_bit_size = 10,
19538         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
19539         .result_operand = {
19540                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
19541                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
19542                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
19543                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19544         },
19545         /* class_tid: 12, wh_plus, table: profile_tcam_0 */
19546         {
19547         .description = "wc_key_id",
19548         .field_bit_size = 4,
19549         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19550         },
19551         {
19552         .description = "wc_profile_id",
19553         .field_bit_size = 8,
19554         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19555         },
19556         {
19557         .description = "wc_search_en",
19558         .field_bit_size = 1,
19559         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19560         },
19561         {
19562         .description = "em_key_mask",
19563         .field_bit_size = 10,
19564         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
19565         .result_operand = {
19566                 (0x00f9 >> 8) & 0xff,
19567                 0x00f9 & 0xff,
19568                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
19569                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19570         },
19571         {
19572         .description = "em_key_id",
19573         .field_bit_size = 5,
19574         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
19575         .result_operand = {0x15, 0x00, 0x00, 0x00, 0x00, 0x00,
19576                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19577         },
19578         {
19579         .description = "em_profile_id",
19580         .field_bit_size = 8,
19581         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
19582         .result_operand = {
19583                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
19584                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
19585                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
19586                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19587         },
19588         {
19589         .description = "em_search_en",
19590         .field_bit_size = 1,
19591         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
19592         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
19593                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19594         },
19595         {
19596         .description = "pl_byp_lkup_en",
19597         .field_bit_size = 1,
19598         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19599         },
19600         /* class_tid: 12, wh_plus, table: ext_em_0 */
19601         {
19602         .description = "act_rec_ptr",
19603         .field_bit_size = 33,
19604         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
19605         .result_operand = {
19606                 (BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR >> 8) & 0xff,
19607                 BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR & 0xff,
19608                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
19609                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19610         },
19611         {
19612         .description = "ext_flow_ctr",
19613         .field_bit_size = 1,
19614         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
19615         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
19616                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19617         },
19618         {
19619         .description = "act_rec_int",
19620         .field_bit_size = 1,
19621         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19622         },
19623         {
19624         .description = "act_rec_size",
19625         .field_bit_size = 5,
19626         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
19627         .result_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,
19628                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19629         },
19630         {
19631         .description = "key_size",
19632         .field_bit_size = 9,
19633         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
19634         .result_operand = {
19635                 (0x00c5 >> 8) & 0xff,
19636                 0x00c5 & 0xff,
19637                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
19638                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19639         },
19640         {
19641         .description = "reserved",
19642         .field_bit_size = 11,
19643         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19644         },
19645         {
19646         .description = "strength",
19647         .field_bit_size = 2,
19648         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
19649         .result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,
19650                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19651         },
19652         {
19653         .description = "l1_cacheable",
19654         .field_bit_size = 1,
19655         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19656         },
19657         {
19658         .description = "valid",
19659         .field_bit_size = 1,
19660         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
19661         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
19662                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19663         },
19664         /* class_tid: 12, wh_plus, table: int_em_0 */
19665         {
19666         .description = "act_rec_ptr",
19667         .field_bit_size = 33,
19668         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
19669         .result_operand = {
19670                 (BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR >> 8) & 0xff,
19671                 BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR & 0xff,
19672                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
19673                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19674         },
19675         {
19676         .description = "ext_flow_ctr",
19677         .field_bit_size = 1,
19678         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
19679         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
19680                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19681         },
19682         {
19683         .description = "act_rec_int",
19684         .field_bit_size = 1,
19685         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19686         },
19687         {
19688         .description = "act_rec_size",
19689         .field_bit_size = 5,
19690         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
19691         .result_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,
19692                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19693         },
19694         {
19695         .description = "key_size",
19696         .field_bit_size = 9,
19697         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
19698         .result_operand = {
19699                 (0x00c5 >> 8) & 0xff,
19700                 0x00c5 & 0xff,
19701                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
19702                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19703         },
19704         {
19705         .description = "reserved",
19706         .field_bit_size = 11,
19707         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19708         },
19709         {
19710         .description = "strength",
19711         .field_bit_size = 2,
19712         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
19713         .result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,
19714                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19715         },
19716         {
19717         .description = "l1_cacheable",
19718         .field_bit_size = 1,
19719         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19720         },
19721         {
19722         .description = "valid",
19723         .field_bit_size = 1,
19724         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
19725         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
19726                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19727         },
19728         /* class_tid: 13, wh_plus, table: l2_cntxt_tcam_0 */
19729         {
19730         .description = "l2_cntxt_id",
19731         .field_bit_size = 10,
19732         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
19733         .result_operand = {
19734                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
19735                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
19736                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
19737                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19738         },
19739         {
19740         .description = "prof_func_id",
19741         .field_bit_size = 7,
19742         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
19743         .result_operand = {
19744                 (BNXT_ULP_GLB_REGFILE_INDEX_L2_PROF_FUNC_ID >> 8) & 0xff,
19745                 BNXT_ULP_GLB_REGFILE_INDEX_L2_PROF_FUNC_ID & 0xff,
19746                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
19747                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19748         },
19749         {
19750         .description = "l2_byp_lkup_en",
19751         .field_bit_size = 1,
19752         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19753         },
19754         {
19755         .description = "parif",
19756         .field_bit_size = 4,
19757         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,
19758         .result_operand = {
19759                 (BNXT_ULP_CF_IDX_PHY_PORT_PARIF >> 8) & 0xff,
19760                 BNXT_ULP_CF_IDX_PHY_PORT_PARIF & 0xff,
19761                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
19762                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19763         },
19764         {
19765         .description = "allowed_pri",
19766         .field_bit_size = 8,
19767         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19768         },
19769         {
19770         .description = "default_pri",
19771         .field_bit_size = 3,
19772         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19773         },
19774         {
19775         .description = "allowed_tpid",
19776         .field_bit_size = 6,
19777         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19778         },
19779         {
19780         .description = "default_tpid",
19781         .field_bit_size = 3,
19782         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19783         },
19784         {
19785         .description = "bd_act_en",
19786         .field_bit_size = 1,
19787         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19788         },
19789         {
19790         .description = "sp_rec_ptr",
19791         .field_bit_size = 16,
19792         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19793         },
19794         {
19795         .description = "byp_sp_lkup",
19796         .field_bit_size = 1,
19797         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
19798         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
19799                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19800         },
19801         {
19802         .description = "pri_anti_spoof_ctl",
19803         .field_bit_size = 2,
19804         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19805         },
19806         {
19807         .description = "tpid_anti_spoof_ctl",
19808         .field_bit_size = 2,
19809         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19810         },
19811         /* class_tid: 13, wh_plus, table: profile_tcam_cache_0 */
19812         {
19813         .description = "em_profile_id",
19814         .field_bit_size = 10,
19815         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
19816         .result_operand = {
19817                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
19818                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
19819                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
19820                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19821         },
19822         /* class_tid: 13, wh_plus, table: profile_tcam_0 */
19823         {
19824         .description = "wc_key_id",
19825         .field_bit_size = 4,
19826         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19827         },
19828         {
19829         .description = "wc_profile_id",
19830         .field_bit_size = 8,
19831         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19832         },
19833         {
19834         .description = "wc_search_en",
19835         .field_bit_size = 1,
19836         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19837         },
19838         {
19839         .description = "em_key_mask",
19840         .field_bit_size = 10,
19841         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
19842         .result_operand = {
19843                 (0x00f9 >> 8) & 0xff,
19844                 0x00f9 & 0xff,
19845                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
19846                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19847         },
19848         {
19849         .description = "em_key_id",
19850         .field_bit_size = 5,
19851         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
19852         .result_operand = {0x15, 0x00, 0x00, 0x00, 0x00, 0x00,
19853                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19854         },
19855         {
19856         .description = "em_profile_id",
19857         .field_bit_size = 8,
19858         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
19859         .result_operand = {
19860                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
19861                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
19862                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
19863                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19864         },
19865         {
19866         .description = "em_search_en",
19867         .field_bit_size = 1,
19868         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
19869         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
19870                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19871         },
19872         {
19873         .description = "pl_byp_lkup_en",
19874         .field_bit_size = 1,
19875         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19876         },
19877         /* class_tid: 13, wh_plus, table: ext_em_0 */
19878         {
19879         .description = "act_rec_ptr",
19880         .field_bit_size = 33,
19881         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
19882         .result_operand = {
19883                 (BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR >> 8) & 0xff,
19884                 BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR & 0xff,
19885                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
19886                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19887         },
19888         {
19889         .description = "ext_flow_ctr",
19890         .field_bit_size = 1,
19891         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
19892         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
19893                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19894         },
19895         {
19896         .description = "act_rec_int",
19897         .field_bit_size = 1,
19898         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19899         },
19900         {
19901         .description = "act_rec_size",
19902         .field_bit_size = 5,
19903         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
19904         .result_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,
19905                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19906         },
19907         {
19908         .description = "key_size",
19909         .field_bit_size = 9,
19910         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
19911         .result_operand = {
19912                 (0x00c5 >> 8) & 0xff,
19913                 0x00c5 & 0xff,
19914                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
19915                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19916         },
19917         {
19918         .description = "reserved",
19919         .field_bit_size = 11,
19920         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19921         },
19922         {
19923         .description = "strength",
19924         .field_bit_size = 2,
19925         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
19926         .result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,
19927                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19928         },
19929         {
19930         .description = "l1_cacheable",
19931         .field_bit_size = 1,
19932         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19933         },
19934         {
19935         .description = "valid",
19936         .field_bit_size = 1,
19937         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
19938         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
19939                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19940         },
19941         /* class_tid: 13, wh_plus, table: int_em_0 */
19942         {
19943         .description = "act_rec_ptr",
19944         .field_bit_size = 33,
19945         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
19946         .result_operand = {
19947                 (BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR >> 8) & 0xff,
19948                 BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR & 0xff,
19949                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
19950                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19951         },
19952         {
19953         .description = "ext_flow_ctr",
19954         .field_bit_size = 1,
19955         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
19956         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
19957                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19958         },
19959         {
19960         .description = "act_rec_int",
19961         .field_bit_size = 1,
19962         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19963         },
19964         {
19965         .description = "act_rec_size",
19966         .field_bit_size = 5,
19967         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
19968         .result_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,
19969                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19970         },
19971         {
19972         .description = "key_size",
19973         .field_bit_size = 9,
19974         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
19975         .result_operand = {
19976                 (0x00c5 >> 8) & 0xff,
19977                 0x00c5 & 0xff,
19978                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
19979                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19980         },
19981         {
19982         .description = "reserved",
19983         .field_bit_size = 11,
19984         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19985         },
19986         {
19987         .description = "strength",
19988         .field_bit_size = 2,
19989         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
19990         .result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,
19991                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19992         },
19993         {
19994         .description = "l1_cacheable",
19995         .field_bit_size = 1,
19996         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19997         },
19998         {
19999         .description = "valid",
20000         .field_bit_size = 1,
20001         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
20002         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
20003                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20004         },
20005         /* class_tid: 14, wh_plus, table: l2_cntxt_tcam_0 */
20006         {
20007         .description = "l2_cntxt_id",
20008         .field_bit_size = 10,
20009         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
20010         .result_operand = {
20011                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
20012                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
20013                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
20014                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20015         },
20016         {
20017         .description = "prof_func_id",
20018         .field_bit_size = 7,
20019         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
20020         .result_operand = {
20021                 (BNXT_ULP_GLB_REGFILE_INDEX_L2_PROF_FUNC_ID >> 8) & 0xff,
20022                 BNXT_ULP_GLB_REGFILE_INDEX_L2_PROF_FUNC_ID & 0xff,
20023                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
20024                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20025         },
20026         {
20027         .description = "l2_byp_lkup_en",
20028         .field_bit_size = 1,
20029         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20030         },
20031         {
20032         .description = "parif",
20033         .field_bit_size = 4,
20034         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,
20035         .result_operand = {
20036                 (BNXT_ULP_CF_IDX_PHY_PORT_PARIF >> 8) & 0xff,
20037                 BNXT_ULP_CF_IDX_PHY_PORT_PARIF & 0xff,
20038                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
20039                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20040         },
20041         {
20042         .description = "allowed_pri",
20043         .field_bit_size = 8,
20044         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20045         },
20046         {
20047         .description = "default_pri",
20048         .field_bit_size = 3,
20049         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20050         },
20051         {
20052         .description = "allowed_tpid",
20053         .field_bit_size = 6,
20054         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20055         },
20056         {
20057         .description = "default_tpid",
20058         .field_bit_size = 3,
20059         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20060         },
20061         {
20062         .description = "bd_act_en",
20063         .field_bit_size = 1,
20064         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20065         },
20066         {
20067         .description = "sp_rec_ptr",
20068         .field_bit_size = 16,
20069         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20070         },
20071         {
20072         .description = "byp_sp_lkup",
20073         .field_bit_size = 1,
20074         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
20075         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
20076                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20077         },
20078         {
20079         .description = "pri_anti_spoof_ctl",
20080         .field_bit_size = 2,
20081         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20082         },
20083         {
20084         .description = "tpid_anti_spoof_ctl",
20085         .field_bit_size = 2,
20086         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20087         },
20088         /* class_tid: 14, wh_plus, table: profile_tcam_cache_0 */
20089         {
20090         .description = "em_profile_id",
20091         .field_bit_size = 10,
20092         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
20093         .result_operand = {
20094                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
20095                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
20096                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
20097                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20098         },
20099         /* class_tid: 14, wh_plus, table: profile_tcam_0 */
20100         {
20101         .description = "wc_key_id",
20102         .field_bit_size = 4,
20103         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20104         },
20105         {
20106         .description = "wc_profile_id",
20107         .field_bit_size = 8,
20108         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20109         },
20110         {
20111         .description = "wc_search_en",
20112         .field_bit_size = 1,
20113         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20114         },
20115         {
20116         .description = "em_key_mask",
20117         .field_bit_size = 10,
20118         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
20119         .result_operand = {
20120                 (0x00f9 >> 8) & 0xff,
20121                 0x00f9 & 0xff,
20122                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
20123                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20124         },
20125         {
20126         .description = "em_key_id",
20127         .field_bit_size = 5,
20128         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
20129         .result_operand = {0x19, 0x00, 0x00, 0x00, 0x00, 0x00,
20130                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20131         },
20132         {
20133         .description = "em_profile_id",
20134         .field_bit_size = 8,
20135         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
20136         .result_operand = {
20137                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
20138                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
20139                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
20140                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20141         },
20142         {
20143         .description = "em_search_en",
20144         .field_bit_size = 1,
20145         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
20146         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
20147                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20148         },
20149         {
20150         .description = "pl_byp_lkup_en",
20151         .field_bit_size = 1,
20152         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20153         },
20154         /* class_tid: 14, wh_plus, table: ext_em_0 */
20155         {
20156         .description = "act_rec_ptr",
20157         .field_bit_size = 33,
20158         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
20159         .result_operand = {
20160                 (BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR >> 8) & 0xff,
20161                 BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR & 0xff,
20162                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
20163                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20164         },
20165         {
20166         .description = "ext_flow_ctr",
20167         .field_bit_size = 1,
20168         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
20169         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
20170                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20171         },
20172         {
20173         .description = "act_rec_int",
20174         .field_bit_size = 1,
20175         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20176         },
20177         {
20178         .description = "act_rec_size",
20179         .field_bit_size = 5,
20180         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
20181         .result_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,
20182                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20183         },
20184         {
20185         .description = "key_size",
20186         .field_bit_size = 9,
20187         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
20188         .result_operand = {
20189                 (0x0185 >> 8) & 0xff,
20190                 0x0185 & 0xff,
20191                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
20192                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20193         },
20194         {
20195         .description = "reserved",
20196         .field_bit_size = 11,
20197         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20198         },
20199         {
20200         .description = "strength",
20201         .field_bit_size = 2,
20202         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
20203         .result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,
20204                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20205         },
20206         {
20207         .description = "l1_cacheable",
20208         .field_bit_size = 1,
20209         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20210         },
20211         {
20212         .description = "valid",
20213         .field_bit_size = 1,
20214         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
20215         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
20216                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20217         },
20218         /* class_tid: 14, wh_plus, table: int_em_0 */
20219         {
20220         .description = "act_rec_ptr",
20221         .field_bit_size = 33,
20222         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
20223         .result_operand = {
20224                 (BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR >> 8) & 0xff,
20225                 BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR & 0xff,
20226                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
20227                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20228         },
20229         {
20230         .description = "ext_flow_ctr",
20231         .field_bit_size = 1,
20232         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
20233         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
20234                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20235         },
20236         {
20237         .description = "act_rec_int",
20238         .field_bit_size = 1,
20239         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20240         },
20241         {
20242         .description = "act_rec_size",
20243         .field_bit_size = 5,
20244         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
20245         .result_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,
20246                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20247         },
20248         {
20249         .description = "key_size",
20250         .field_bit_size = 9,
20251         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
20252         .result_operand = {
20253                 (0x0185 >> 8) & 0xff,
20254                 0x0185 & 0xff,
20255                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
20256                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20257         },
20258         {
20259         .description = "reserved",
20260         .field_bit_size = 11,
20261         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20262         },
20263         {
20264         .description = "strength",
20265         .field_bit_size = 2,
20266         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
20267         .result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,
20268                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20269         },
20270         {
20271         .description = "l1_cacheable",
20272         .field_bit_size = 1,
20273         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20274         },
20275         {
20276         .description = "valid",
20277         .field_bit_size = 1,
20278         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
20279         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
20280                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20281         },
20282         /* class_tid: 15, wh_plus, table: l2_cntxt_tcam_0 */
20283         {
20284         .description = "l2_cntxt_id",
20285         .field_bit_size = 10,
20286         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
20287         .result_operand = {
20288                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
20289                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
20290                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
20291                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20292         },
20293         {
20294         .description = "prof_func_id",
20295         .field_bit_size = 7,
20296         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
20297         .result_operand = {
20298                 (BNXT_ULP_GLB_REGFILE_INDEX_L2_PROF_FUNC_ID >> 8) & 0xff,
20299                 BNXT_ULP_GLB_REGFILE_INDEX_L2_PROF_FUNC_ID & 0xff,
20300                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
20301                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20302         },
20303         {
20304         .description = "l2_byp_lkup_en",
20305         .field_bit_size = 1,
20306         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20307         },
20308         {
20309         .description = "parif",
20310         .field_bit_size = 4,
20311         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,
20312         .result_operand = {
20313                 (BNXT_ULP_CF_IDX_PHY_PORT_PARIF >> 8) & 0xff,
20314                 BNXT_ULP_CF_IDX_PHY_PORT_PARIF & 0xff,
20315                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
20316                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20317         },
20318         {
20319         .description = "allowed_pri",
20320         .field_bit_size = 8,
20321         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20322         },
20323         {
20324         .description = "default_pri",
20325         .field_bit_size = 3,
20326         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20327         },
20328         {
20329         .description = "allowed_tpid",
20330         .field_bit_size = 6,
20331         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20332         },
20333         {
20334         .description = "default_tpid",
20335         .field_bit_size = 3,
20336         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20337         },
20338         {
20339         .description = "bd_act_en",
20340         .field_bit_size = 1,
20341         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20342         },
20343         {
20344         .description = "sp_rec_ptr",
20345         .field_bit_size = 16,
20346         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20347         },
20348         {
20349         .description = "byp_sp_lkup",
20350         .field_bit_size = 1,
20351         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
20352         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
20353                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20354         },
20355         {
20356         .description = "pri_anti_spoof_ctl",
20357         .field_bit_size = 2,
20358         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20359         },
20360         {
20361         .description = "tpid_anti_spoof_ctl",
20362         .field_bit_size = 2,
20363         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20364         },
20365         /* class_tid: 15, wh_plus, table: profile_tcam_cache_0 */
20366         {
20367         .description = "em_profile_id",
20368         .field_bit_size = 10,
20369         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
20370         .result_operand = {
20371                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
20372                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
20373                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
20374                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20375         },
20376         /* class_tid: 15, wh_plus, table: profile_tcam_0 */
20377         {
20378         .description = "wc_key_id",
20379         .field_bit_size = 4,
20380         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20381         },
20382         {
20383         .description = "wc_profile_id",
20384         .field_bit_size = 8,
20385         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20386         },
20387         {
20388         .description = "wc_search_en",
20389         .field_bit_size = 1,
20390         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20391         },
20392         {
20393         .description = "em_key_mask",
20394         .field_bit_size = 10,
20395         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
20396         .result_operand = {
20397                 (0x00f9 >> 8) & 0xff,
20398                 0x00f9 & 0xff,
20399                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
20400                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20401         },
20402         {
20403         .description = "em_key_id",
20404         .field_bit_size = 5,
20405         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
20406         .result_operand = {0x19, 0x00, 0x00, 0x00, 0x00, 0x00,
20407                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20408         },
20409         {
20410         .description = "em_profile_id",
20411         .field_bit_size = 8,
20412         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
20413         .result_operand = {
20414                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
20415                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
20416                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
20417                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20418         },
20419         {
20420         .description = "em_search_en",
20421         .field_bit_size = 1,
20422         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
20423         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
20424                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20425         },
20426         {
20427         .description = "pl_byp_lkup_en",
20428         .field_bit_size = 1,
20429         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20430         },
20431         /* class_tid: 15, wh_plus, table: ext_em_0 */
20432         {
20433         .description = "act_rec_ptr",
20434         .field_bit_size = 33,
20435         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
20436         .result_operand = {
20437                 (BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR >> 8) & 0xff,
20438                 BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR & 0xff,
20439                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
20440                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20441         },
20442         {
20443         .description = "ext_flow_ctr",
20444         .field_bit_size = 1,
20445         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
20446         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
20447                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20448         },
20449         {
20450         .description = "act_rec_int",
20451         .field_bit_size = 1,
20452         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20453         },
20454         {
20455         .description = "act_rec_size",
20456         .field_bit_size = 5,
20457         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
20458         .result_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,
20459                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20460         },
20461         {
20462         .description = "key_size",
20463         .field_bit_size = 9,
20464         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
20465         .result_operand = {
20466                 (0x0185 >> 8) & 0xff,
20467                 0x0185 & 0xff,
20468                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
20469                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20470         },
20471         {
20472         .description = "reserved",
20473         .field_bit_size = 11,
20474         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20475         },
20476         {
20477         .description = "strength",
20478         .field_bit_size = 2,
20479         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
20480         .result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,
20481                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20482         },
20483         {
20484         .description = "l1_cacheable",
20485         .field_bit_size = 1,
20486         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20487         },
20488         {
20489         .description = "valid",
20490         .field_bit_size = 1,
20491         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
20492         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
20493                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20494         },
20495         /* class_tid: 15, wh_plus, table: int_em_0 */
20496         {
20497         .description = "act_rec_ptr",
20498         .field_bit_size = 33,
20499         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
20500         .result_operand = {
20501                 (BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR >> 8) & 0xff,
20502                 BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR & 0xff,
20503                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
20504                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20505         },
20506         {
20507         .description = "ext_flow_ctr",
20508         .field_bit_size = 1,
20509         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
20510         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
20511                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20512         },
20513         {
20514         .description = "act_rec_int",
20515         .field_bit_size = 1,
20516         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20517         },
20518         {
20519         .description = "act_rec_size",
20520         .field_bit_size = 5,
20521         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
20522         .result_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,
20523                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20524         },
20525         {
20526         .description = "key_size",
20527         .field_bit_size = 9,
20528         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
20529         .result_operand = {
20530                 (0x0185 >> 8) & 0xff,
20531                 0x0185 & 0xff,
20532                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
20533                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20534         },
20535         {
20536         .description = "reserved",
20537         .field_bit_size = 11,
20538         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20539         },
20540         {
20541         .description = "strength",
20542         .field_bit_size = 2,
20543         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
20544         .result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,
20545                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20546         },
20547         {
20548         .description = "l1_cacheable",
20549         .field_bit_size = 1,
20550         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20551         },
20552         {
20553         .description = "valid",
20554         .field_bit_size = 1,
20555         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
20556         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
20557                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20558         },
20559         /* class_tid: 16, wh_plus, table: l2_cntxt_tcam_0 */
20560         {
20561         .description = "l2_cntxt_id",
20562         .field_bit_size = 10,
20563         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
20564         .result_operand = {
20565                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
20566                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
20567                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
20568                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20569         },
20570         {
20571         .description = "prof_func_id",
20572         .field_bit_size = 7,
20573         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
20574         .result_operand = {
20575                 (BNXT_ULP_GLB_REGFILE_INDEX_VXLAN_PROF_FUNC_ID >> 8) & 0xff,
20576                 BNXT_ULP_GLB_REGFILE_INDEX_VXLAN_PROF_FUNC_ID & 0xff,
20577                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
20578                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20579         },
20580         {
20581         .description = "l2_byp_lkup_en",
20582         .field_bit_size = 1,
20583         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20584         },
20585         {
20586         .description = "parif",
20587         .field_bit_size = 4,
20588         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,
20589         .result_operand = {
20590                 (BNXT_ULP_CF_IDX_PHY_PORT_PARIF >> 8) & 0xff,
20591                 BNXT_ULP_CF_IDX_PHY_PORT_PARIF & 0xff,
20592                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
20593                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20594         },
20595         {
20596         .description = "allowed_pri",
20597         .field_bit_size = 8,
20598         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20599         },
20600         {
20601         .description = "default_pri",
20602         .field_bit_size = 3,
20603         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20604         },
20605         {
20606         .description = "allowed_tpid",
20607         .field_bit_size = 6,
20608         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20609         },
20610         {
20611         .description = "default_tpid",
20612         .field_bit_size = 3,
20613         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20614         },
20615         {
20616         .description = "bd_act_en",
20617         .field_bit_size = 1,
20618         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20619         },
20620         {
20621         .description = "sp_rec_ptr",
20622         .field_bit_size = 16,
20623         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20624         },
20625         {
20626         .description = "byp_sp_lkup",
20627         .field_bit_size = 1,
20628         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
20629         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
20630                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20631         },
20632         {
20633         .description = "pri_anti_spoof_ctl",
20634         .field_bit_size = 2,
20635         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20636         },
20637         {
20638         .description = "tpid_anti_spoof_ctl",
20639         .field_bit_size = 2,
20640         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20641         },
20642         /* class_tid: 16, wh_plus, table: profile_tcam_cache_0 */
20643         {
20644         .description = "em_profile_id",
20645         .field_bit_size = 10,
20646         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
20647         .result_operand = {
20648                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
20649                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
20650                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
20651                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20652         },
20653         /* class_tid: 16, wh_plus, table: profile_tcam_0 */
20654         {
20655         .description = "wc_key_id",
20656         .field_bit_size = 4,
20657         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20658         },
20659         {
20660         .description = "wc_profile_id",
20661         .field_bit_size = 8,
20662         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20663         },
20664         {
20665         .description = "wc_search_en",
20666         .field_bit_size = 1,
20667         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20668         },
20669         {
20670         .description = "em_key_mask",
20671         .field_bit_size = 10,
20672         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
20673         .result_operand = {
20674                 (0x0031 >> 8) & 0xff,
20675                 0x0031 & 0xff,
20676                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
20677                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20678         },
20679         {
20680         .description = "em_key_id",
20681         .field_bit_size = 5,
20682         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
20683         .result_operand = {0x14, 0x00, 0x00, 0x00, 0x00, 0x00,
20684                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20685         },
20686         {
20687         .description = "em_profile_id",
20688         .field_bit_size = 8,
20689         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
20690         .result_operand = {
20691                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
20692                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
20693                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
20694                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20695         },
20696         {
20697         .description = "em_search_en",
20698         .field_bit_size = 1,
20699         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
20700         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
20701                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20702         },
20703         {
20704         .description = "pl_byp_lkup_en",
20705         .field_bit_size = 1,
20706         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20707         },
20708         /* class_tid: 16, wh_plus, table: ext_em_0 */
20709         {
20710         .description = "act_rec_ptr",
20711         .field_bit_size = 33,
20712         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
20713         .result_operand = {
20714                 (BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR >> 8) & 0xff,
20715                 BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR & 0xff,
20716                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
20717                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20718         },
20719         {
20720         .description = "ext_flow_ctr",
20721         .field_bit_size = 1,
20722         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
20723         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
20724                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20725         },
20726         {
20727         .description = "act_rec_int",
20728         .field_bit_size = 1,
20729         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20730         },
20731         {
20732         .description = "act_rec_size",
20733         .field_bit_size = 5,
20734         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
20735         .result_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,
20736                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20737         },
20738         {
20739         .description = "key_size",
20740         .field_bit_size = 9,
20741         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
20742         .result_operand = {
20743                 (0x00c5 >> 8) & 0xff,
20744                 0x00c5 & 0xff,
20745                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
20746                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20747         },
20748         {
20749         .description = "reserved",
20750         .field_bit_size = 11,
20751         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20752         },
20753         {
20754         .description = "strength",
20755         .field_bit_size = 2,
20756         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
20757         .result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,
20758                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20759         },
20760         {
20761         .description = "l1_cacheable",
20762         .field_bit_size = 1,
20763         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20764         },
20765         {
20766         .description = "valid",
20767         .field_bit_size = 1,
20768         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
20769         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
20770                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20771         },
20772         /* class_tid: 16, wh_plus, table: int_em_0 */
20773         {
20774         .description = "act_rec_ptr",
20775         .field_bit_size = 33,
20776         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
20777         .result_operand = {
20778                 (BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR >> 8) & 0xff,
20779                 BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR & 0xff,
20780                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
20781                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20782         },
20783         {
20784         .description = "ext_flow_ctr",
20785         .field_bit_size = 1,
20786         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
20787         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
20788                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20789         },
20790         {
20791         .description = "act_rec_int",
20792         .field_bit_size = 1,
20793         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20794         },
20795         {
20796         .description = "act_rec_size",
20797         .field_bit_size = 5,
20798         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
20799         .result_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,
20800                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20801         },
20802         {
20803         .description = "key_size",
20804         .field_bit_size = 9,
20805         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
20806         .result_operand = {
20807                 (0x00c5 >> 8) & 0xff,
20808                 0x00c5 & 0xff,
20809                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
20810                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20811         },
20812         {
20813         .description = "reserved",
20814         .field_bit_size = 11,
20815         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20816         },
20817         {
20818         .description = "strength",
20819         .field_bit_size = 2,
20820         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
20821         .result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,
20822                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20823         },
20824         {
20825         .description = "l1_cacheable",
20826         .field_bit_size = 1,
20827         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20828         },
20829         {
20830         .description = "valid",
20831         .field_bit_size = 1,
20832         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
20833         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
20834                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20835         },
20836         /* class_tid: 17, wh_plus, table: l2_cntxt_tcam_0 */
20837         {
20838         .description = "l2_cntxt_id",
20839         .field_bit_size = 10,
20840         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
20841         .result_operand = {
20842                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
20843                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
20844                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
20845                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20846         },
20847         {
20848         .description = "prof_func_id",
20849         .field_bit_size = 7,
20850         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
20851         .result_operand = {
20852                 (BNXT_ULP_GLB_REGFILE_INDEX_VXLAN_PROF_FUNC_ID >> 8) & 0xff,
20853                 BNXT_ULP_GLB_REGFILE_INDEX_VXLAN_PROF_FUNC_ID & 0xff,
20854                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
20855                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20856         },
20857         {
20858         .description = "l2_byp_lkup_en",
20859         .field_bit_size = 1,
20860         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20861         },
20862         {
20863         .description = "parif",
20864         .field_bit_size = 4,
20865         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,
20866         .result_operand = {
20867                 (BNXT_ULP_CF_IDX_PHY_PORT_PARIF >> 8) & 0xff,
20868                 BNXT_ULP_CF_IDX_PHY_PORT_PARIF & 0xff,
20869                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
20870                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20871         },
20872         {
20873         .description = "allowed_pri",
20874         .field_bit_size = 8,
20875         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20876         },
20877         {
20878         .description = "default_pri",
20879         .field_bit_size = 3,
20880         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20881         },
20882         {
20883         .description = "allowed_tpid",
20884         .field_bit_size = 6,
20885         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20886         },
20887         {
20888         .description = "default_tpid",
20889         .field_bit_size = 3,
20890         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20891         },
20892         {
20893         .description = "bd_act_en",
20894         .field_bit_size = 1,
20895         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20896         },
20897         {
20898         .description = "sp_rec_ptr",
20899         .field_bit_size = 16,
20900         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20901         },
20902         {
20903         .description = "byp_sp_lkup",
20904         .field_bit_size = 1,
20905         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
20906         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
20907                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20908         },
20909         {
20910         .description = "pri_anti_spoof_ctl",
20911         .field_bit_size = 2,
20912         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20913         },
20914         {
20915         .description = "tpid_anti_spoof_ctl",
20916         .field_bit_size = 2,
20917         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20918         },
20919         /* class_tid: 17, wh_plus, table: profile_tcam_cache_0 */
20920         {
20921         .description = "em_profile_id",
20922         .field_bit_size = 10,
20923         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
20924         .result_operand = {
20925                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
20926                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
20927                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
20928                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20929         },
20930         /* class_tid: 17, wh_plus, table: profile_tcam_0 */
20931         {
20932         .description = "wc_key_id",
20933         .field_bit_size = 4,
20934         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20935         },
20936         {
20937         .description = "wc_profile_id",
20938         .field_bit_size = 8,
20939         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20940         },
20941         {
20942         .description = "wc_search_en",
20943         .field_bit_size = 1,
20944         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20945         },
20946         {
20947         .description = "em_key_mask",
20948         .field_bit_size = 10,
20949         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
20950         .result_operand = {
20951                 (0x0031 >> 8) & 0xff,
20952                 0x0031 & 0xff,
20953                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
20954                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20955         },
20956         {
20957         .description = "em_key_id",
20958         .field_bit_size = 5,
20959         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
20960         .result_operand = {0x18, 0x00, 0x00, 0x00, 0x00, 0x00,
20961                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20962         },
20963         {
20964         .description = "em_profile_id",
20965         .field_bit_size = 8,
20966         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
20967         .result_operand = {
20968                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
20969                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
20970                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
20971                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20972         },
20973         {
20974         .description = "em_search_en",
20975         .field_bit_size = 1,
20976         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
20977         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
20978                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20979         },
20980         {
20981         .description = "pl_byp_lkup_en",
20982         .field_bit_size = 1,
20983         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20984         },
20985         /* class_tid: 17, wh_plus, table: ext_em_0 */
20986         {
20987         .description = "act_rec_ptr",
20988         .field_bit_size = 33,
20989         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
20990         .result_operand = {
20991                 (BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR >> 8) & 0xff,
20992                 BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR & 0xff,
20993                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
20994                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20995         },
20996         {
20997         .description = "ext_flow_ctr",
20998         .field_bit_size = 1,
20999         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
21000         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
21001                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21002         },
21003         {
21004         .description = "act_rec_int",
21005         .field_bit_size = 1,
21006         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21007         },
21008         {
21009         .description = "act_rec_size",
21010         .field_bit_size = 5,
21011         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
21012         .result_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,
21013                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21014         },
21015         {
21016         .description = "key_size",
21017         .field_bit_size = 9,
21018         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
21019         .result_operand = {
21020                 (0x0185 >> 8) & 0xff,
21021                 0x0185 & 0xff,
21022                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
21023                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21024         },
21025         {
21026         .description = "reserved",
21027         .field_bit_size = 11,
21028         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21029         },
21030         {
21031         .description = "strength",
21032         .field_bit_size = 2,
21033         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
21034         .result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,
21035                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21036         },
21037         {
21038         .description = "l1_cacheable",
21039         .field_bit_size = 1,
21040         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21041         },
21042         {
21043         .description = "valid",
21044         .field_bit_size = 1,
21045         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
21046         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
21047                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21048         },
21049         /* class_tid: 17, wh_plus, table: int_em_0 */
21050         {
21051         .description = "act_rec_ptr",
21052         .field_bit_size = 33,
21053         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
21054         .result_operand = {
21055                 (BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR >> 8) & 0xff,
21056                 BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR & 0xff,
21057                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
21058                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21059         },
21060         {
21061         .description = "ext_flow_ctr",
21062         .field_bit_size = 1,
21063         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
21064         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
21065                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21066         },
21067         {
21068         .description = "act_rec_int",
21069         .field_bit_size = 1,
21070         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21071         },
21072         {
21073         .description = "act_rec_size",
21074         .field_bit_size = 5,
21075         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
21076         .result_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,
21077                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21078         },
21079         {
21080         .description = "key_size",
21081         .field_bit_size = 9,
21082         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
21083         .result_operand = {
21084                 (0x0185 >> 8) & 0xff,
21085                 0x0185 & 0xff,
21086                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
21087                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21088         },
21089         {
21090         .description = "reserved",
21091         .field_bit_size = 11,
21092         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21093         },
21094         {
21095         .description = "strength",
21096         .field_bit_size = 2,
21097         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
21098         .result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,
21099                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21100         },
21101         {
21102         .description = "l1_cacheable",
21103         .field_bit_size = 1,
21104         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21105         },
21106         {
21107         .description = "valid",
21108         .field_bit_size = 1,
21109         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
21110         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
21111                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21112         },
21113         /* class_tid: 18, wh_plus, table: int_flow_counter_tbl_0 */
21114         {
21115         .description = "count",
21116         .field_bit_size = 64,
21117         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21118         },
21119         /* class_tid: 18, wh_plus, table: l2_cntxt_tcam_0 */
21120         {
21121         .description = "l2_cntxt_id",
21122         .field_bit_size = 10,
21123         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
21124         .result_operand = {
21125                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
21126                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
21127                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
21128                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21129         },
21130         {
21131         .description = "prof_func_id",
21132         .field_bit_size = 7,
21133         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
21134         .result_operand = {
21135                 (BNXT_ULP_GLB_REGFILE_INDEX_VXLAN_PROF_FUNC_ID >> 8) & 0xff,
21136                 BNXT_ULP_GLB_REGFILE_INDEX_VXLAN_PROF_FUNC_ID & 0xff,
21137                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
21138                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21139         },
21140         {
21141         .description = "l2_byp_lkup_en",
21142         .field_bit_size = 1,
21143         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21144         },
21145         {
21146         .description = "parif",
21147         .field_bit_size = 4,
21148         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,
21149         .result_operand = {
21150                 (BNXT_ULP_CF_IDX_PHY_PORT_PARIF >> 8) & 0xff,
21151                 BNXT_ULP_CF_IDX_PHY_PORT_PARIF & 0xff,
21152                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
21153                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21154         },
21155         {
21156         .description = "allowed_pri",
21157         .field_bit_size = 8,
21158         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21159         },
21160         {
21161         .description = "default_pri",
21162         .field_bit_size = 3,
21163         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21164         },
21165         {
21166         .description = "allowed_tpid",
21167         .field_bit_size = 6,
21168         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21169         },
21170         {
21171         .description = "default_tpid",
21172         .field_bit_size = 3,
21173         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21174         },
21175         {
21176         .description = "bd_act_en",
21177         .field_bit_size = 1,
21178         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21179         },
21180         {
21181         .description = "sp_rec_ptr",
21182         .field_bit_size = 16,
21183         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21184         },
21185         {
21186         .description = "byp_sp_lkup",
21187         .field_bit_size = 1,
21188         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
21189         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
21190                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21191         },
21192         {
21193         .description = "pri_anti_spoof_ctl",
21194         .field_bit_size = 2,
21195         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21196         },
21197         {
21198         .description = "tpid_anti_spoof_ctl",
21199         .field_bit_size = 2,
21200         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21201         },
21202         /* class_tid: 18, wh_plus, table: profile_tcam_cache_0 */
21203         {
21204         .description = "em_profile_id",
21205         .field_bit_size = 10,
21206         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
21207         .result_operand = {
21208                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
21209                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
21210                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
21211                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21212         },
21213         {
21214         .description = "wc_profile_id",
21215         .field_bit_size = 10,
21216         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
21217         .result_operand = {
21218                 (BNXT_ULP_REGFILE_INDEX_WC_PROFILE_ID_0 >> 8) & 0xff,
21219                 BNXT_ULP_REGFILE_INDEX_WC_PROFILE_ID_0 & 0xff,
21220                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
21221                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21222         },
21223         /* class_tid: 18, wh_plus, table: profile_tcam_0 */
21224         {
21225         .description = "wc_key_id",
21226         .field_bit_size = 4,
21227         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21228         },
21229         {
21230         .description = "wc_profile_id",
21231         .field_bit_size = 8,
21232         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
21233         .result_operand = {
21234                 (BNXT_ULP_REGFILE_INDEX_WC_PROFILE_ID_0 >> 8) & 0xff,
21235                 BNXT_ULP_REGFILE_INDEX_WC_PROFILE_ID_0 & 0xff,
21236                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
21237                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21238         },
21239         {
21240         .description = "wc_search_en",
21241         .field_bit_size = 1,
21242         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
21243         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
21244                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21245         },
21246         {
21247         .description = "em_key_mask",
21248         .field_bit_size = 10,
21249         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
21250         .result_operand = {
21251                 (0x001b >> 8) & 0xff,
21252                 0x001b & 0xff,
21253                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
21254                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21255         },
21256         {
21257         .description = "em_key_id",
21258         .field_bit_size = 5,
21259         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
21260         .result_operand = {0x08, 0x00, 0x00, 0x00, 0x00, 0x00,
21261                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21262         },
21263         {
21264         .description = "em_profile_id",
21265         .field_bit_size = 8,
21266         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
21267         .result_operand = {
21268                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
21269                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
21270                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
21271                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21272         },
21273         {
21274         .description = "em_search_en",
21275         .field_bit_size = 1,
21276         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
21277         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
21278                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21279         },
21280         {
21281         .description = "pl_byp_lkup_en",
21282         .field_bit_size = 1,
21283         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21284         },
21285         /* class_tid: 18, wh_plus, table: wm_0 */
21286         {
21287         .description = "strength",
21288         .field_bit_size = 2,
21289         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
21290         .result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,
21291                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21292         },
21293         {
21294         .description = "act_rec_ptr",
21295         .field_bit_size = 16,
21296         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
21297         .result_operand = {
21298                 (BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR >> 8) & 0xff,
21299                 BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR & 0xff,
21300                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
21301                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21302         },
21303         {
21304         .description = "valid",
21305         .field_bit_size = 1,
21306         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
21307         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
21308                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21309         },
21310         /* class_tid: 19, wh_plus, table: l2_cntxt_tcam_0 */
21311         {
21312         .description = "l2_cntxt_id",
21313         .field_bit_size = 10,
21314         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
21315         .result_operand = {
21316                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
21317                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
21318                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
21319                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21320         },
21321         {
21322         .description = "prof_func_id",
21323         .field_bit_size = 7,
21324         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
21325         .result_operand = {
21326                 (BNXT_ULP_GLB_REGFILE_INDEX_VXLAN_PROF_FUNC_ID >> 8) & 0xff,
21327                 BNXT_ULP_GLB_REGFILE_INDEX_VXLAN_PROF_FUNC_ID & 0xff,
21328                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
21329                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21330         },
21331         {
21332         .description = "l2_byp_lkup_en",
21333         .field_bit_size = 1,
21334         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21335         },
21336         {
21337         .description = "parif",
21338         .field_bit_size = 4,
21339         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,
21340         .result_operand = {
21341                 (BNXT_ULP_CF_IDX_PHY_PORT_PARIF >> 8) & 0xff,
21342                 BNXT_ULP_CF_IDX_PHY_PORT_PARIF & 0xff,
21343                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
21344                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21345         },
21346         {
21347         .description = "allowed_pri",
21348         .field_bit_size = 8,
21349         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21350         },
21351         {
21352         .description = "default_pri",
21353         .field_bit_size = 3,
21354         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21355         },
21356         {
21357         .description = "allowed_tpid",
21358         .field_bit_size = 6,
21359         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21360         },
21361         {
21362         .description = "default_tpid",
21363         .field_bit_size = 3,
21364         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21365         },
21366         {
21367         .description = "bd_act_en",
21368         .field_bit_size = 1,
21369         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21370         },
21371         {
21372         .description = "sp_rec_ptr",
21373         .field_bit_size = 16,
21374         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21375         },
21376         {
21377         .description = "byp_sp_lkup",
21378         .field_bit_size = 1,
21379         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
21380         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
21381                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21382         },
21383         {
21384         .description = "pri_anti_spoof_ctl",
21385         .field_bit_size = 2,
21386         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21387         },
21388         {
21389         .description = "tpid_anti_spoof_ctl",
21390         .field_bit_size = 2,
21391         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21392         },
21393         /* class_tid: 19, wh_plus, table: profile_tcam_cache_0 */
21394         {
21395         .description = "em_profile_id",
21396         .field_bit_size = 10,
21397         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
21398         .result_operand = {
21399                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
21400                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
21401                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
21402                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21403         },
21404         {
21405         .description = "wc_profile_id",
21406         .field_bit_size = 10,
21407         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
21408         .result_operand = {
21409                 (BNXT_ULP_REGFILE_INDEX_WC_PROFILE_ID_0 >> 8) & 0xff,
21410                 BNXT_ULP_REGFILE_INDEX_WC_PROFILE_ID_0 & 0xff,
21411                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
21412                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21413         },
21414         /* class_tid: 19, wh_plus, table: profile_tcam_0 */
21415         {
21416         .description = "wc_key_id",
21417         .field_bit_size = 4,
21418         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21419         },
21420         {
21421         .description = "wc_profile_id",
21422         .field_bit_size = 8,
21423         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21424         },
21425         {
21426         .description = "wc_search_en",
21427         .field_bit_size = 1,
21428         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21429         },
21430         {
21431         .description = "em_key_mask",
21432         .field_bit_size = 10,
21433         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21434         },
21435         {
21436         .description = "em_key_id",
21437         .field_bit_size = 5,
21438         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21439         },
21440         {
21441         .description = "em_profile_id",
21442         .field_bit_size = 8,
21443         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21444         },
21445         {
21446         .description = "em_search_en",
21447         .field_bit_size = 1,
21448         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21449         },
21450         {
21451         .description = "pl_byp_lkup_en",
21452         .field_bit_size = 1,
21453         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21454         },
21455         /* class_tid: 19, wh_plus, table: int_em_0 */
21456         {
21457         .description = "act_rec_ptr",
21458         .field_bit_size = 33,
21459         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
21460         .result_operand = {
21461                 (BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR >> 8) & 0xff,
21462                 BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR & 0xff,
21463                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
21464                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21465         },
21466         {
21467         .description = "ext_flow_ctr",
21468         .field_bit_size = 1,
21469         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
21470         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
21471                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21472         },
21473         {
21474         .description = "act_rec_int",
21475         .field_bit_size = 1,
21476         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21477         },
21478         {
21479         .description = "act_rec_size",
21480         .field_bit_size = 5,
21481         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
21482         .result_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,
21483                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21484         },
21485         {
21486         .description = "key_size",
21487         .field_bit_size = 9,
21488         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
21489         .result_operand = {
21490                 (0x006d >> 8) & 0xff,
21491                 0x006d & 0xff,
21492                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
21493                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21494         },
21495         {
21496         .description = "reserved",
21497         .field_bit_size = 11,
21498         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21499         },
21500         {
21501         .description = "strength",
21502         .field_bit_size = 2,
21503         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
21504         .result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,
21505                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21506         },
21507         {
21508         .description = "l1_cacheable",
21509         .field_bit_size = 1,
21510         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21511         },
21512         {
21513         .description = "valid",
21514         .field_bit_size = 1,
21515         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
21516         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
21517                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21518         },
21519         /* class_tid: 19, wh_plus, table: ext_em_0 */
21520         {
21521         .description = "act_rec_ptr",
21522         .field_bit_size = 33,
21523         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
21524         .result_operand = {
21525                 (BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR >> 8) & 0xff,
21526                 BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR & 0xff,
21527                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
21528                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21529         },
21530         {
21531         .description = "ext_flow_ctr",
21532         .field_bit_size = 1,
21533         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
21534         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
21535                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21536         },
21537         {
21538         .description = "act_rec_int",
21539         .field_bit_size = 1,
21540         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21541         },
21542         {
21543         .description = "act_rec_size",
21544         .field_bit_size = 5,
21545         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
21546         .result_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,
21547                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21548         },
21549         {
21550         .description = "key_size",
21551         .field_bit_size = 9,
21552         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
21553         .result_operand = {
21554                 (0x006d >> 8) & 0xff,
21555                 0x006d & 0xff,
21556                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
21557                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21558         },
21559         {
21560         .description = "reserved",
21561         .field_bit_size = 11,
21562         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21563         },
21564         {
21565         .description = "strength",
21566         .field_bit_size = 2,
21567         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
21568         .result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,
21569                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21570         },
21571         {
21572         .description = "l1_cacheable",
21573         .field_bit_size = 1,
21574         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21575         },
21576         {
21577         .description = "valid",
21578         .field_bit_size = 1,
21579         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
21580         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
21581                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21582         },
21583         /* class_tid: 20, wh_plus, table: l2_cntxt_cache_0 */
21584         {
21585         .description = "l2_cntxt_id",
21586         .field_bit_size = 10,
21587         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
21588         .result_operand = {
21589                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
21590                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
21591                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
21592                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21593         },
21594         /* class_tid: 20, wh_plus, table: l2_cntxt_tcam_0 */
21595         {
21596         .description = "l2_cntxt_id",
21597         .field_bit_size = 10,
21598         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
21599         .result_operand = {
21600                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
21601                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
21602                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
21603                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21604         },
21605         {
21606         .description = "prof_func_id",
21607         .field_bit_size = 7,
21608         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
21609         .result_operand = {
21610                 (BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID >> 8) & 0xff,
21611                 BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID & 0xff,
21612                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
21613                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21614         },
21615         {
21616         .description = "l2_byp_lkup_en",
21617         .field_bit_size = 1,
21618         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21619         },
21620         {
21621         .description = "parif",
21622         .field_bit_size = 4,
21623         .result_opcode = BNXT_ULP_MAPPER_OPC_IF_COMP_FIELD_THEN_CF_ELSE_CF,
21624         .result_operand = {
21625                 (BNXT_ULP_CF_IDX_MATCH_PORT_IS_VFREP >> 8) & 0xff,
21626                 BNXT_ULP_CF_IDX_MATCH_PORT_IS_VFREP & 0xff,
21627                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
21628                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
21629         .result_operand_true = {
21630                 (BNXT_ULP_CF_IDX_LOOPBACK_PARIF >> 8) & 0xff,
21631                 BNXT_ULP_CF_IDX_LOOPBACK_PARIF & 0xff,
21632                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
21633                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
21634         .result_operand_false = {
21635                 (BNXT_ULP_CF_IDX_DRV_FUNC_PARIF >> 8) & 0xff,
21636                 BNXT_ULP_CF_IDX_DRV_FUNC_PARIF & 0xff,
21637                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
21638                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21639         },
21640         {
21641         .description = "allowed_pri",
21642         .field_bit_size = 8,
21643         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21644         },
21645         {
21646         .description = "default_pri",
21647         .field_bit_size = 3,
21648         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21649         },
21650         {
21651         .description = "allowed_tpid",
21652         .field_bit_size = 6,
21653         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21654         },
21655         {
21656         .description = "default_tpid",
21657         .field_bit_size = 3,
21658         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21659         },
21660         {
21661         .description = "bd_act_en",
21662         .field_bit_size = 1,
21663         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21664         },
21665         {
21666         .description = "sp_rec_ptr",
21667         .field_bit_size = 16,
21668         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
21669         .result_operand = {
21670                 (BNXT_ULP_REGFILE_INDEX_MAIN_SP_PTR >> 8) & 0xff,
21671                 BNXT_ULP_REGFILE_INDEX_MAIN_SP_PTR & 0xff,
21672                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
21673                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21674         },
21675         {
21676         .description = "byp_sp_lkup",
21677         .field_bit_size = 1,
21678         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
21679         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
21680                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21681         },
21682         {
21683         .description = "pri_anti_spoof_ctl",
21684         .field_bit_size = 2,
21685         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21686         },
21687         {
21688         .description = "tpid_anti_spoof_ctl",
21689         .field_bit_size = 2,
21690         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21691         },
21692         /* class_tid: 20, wh_plus, table: profile_tcam_cache_0 */
21693         {
21694         .description = "em_profile_id",
21695         .field_bit_size = 10,
21696         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
21697         .result_operand = {
21698                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
21699                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
21700                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
21701                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21702         },
21703         /* class_tid: 20, wh_plus, table: profile_tcam_0 */
21704         {
21705         .description = "wc_key_id",
21706         .field_bit_size = 4,
21707         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21708         },
21709         {
21710         .description = "wc_profile_id",
21711         .field_bit_size = 8,
21712         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21713         },
21714         {
21715         .description = "wc_search_en",
21716         .field_bit_size = 1,
21717         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21718         },
21719         {
21720         .description = "em_key_mask",
21721         .field_bit_size = 10,
21722         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
21723         .result_operand = {
21724                 (0x00f9 >> 8) & 0xff,
21725                 0x00f9 & 0xff,
21726                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
21727                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21728         },
21729         {
21730         .description = "em_key_id",
21731         .field_bit_size = 5,
21732         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
21733         .result_operand = {0x15, 0x00, 0x00, 0x00, 0x00, 0x00,
21734                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21735         },
21736         {
21737         .description = "em_profile_id",
21738         .field_bit_size = 8,
21739         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
21740         .result_operand = {
21741                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
21742                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
21743                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
21744                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21745         },
21746         {
21747         .description = "em_search_en",
21748         .field_bit_size = 1,
21749         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
21750         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
21751                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21752         },
21753         {
21754         .description = "pl_byp_lkup_en",
21755         .field_bit_size = 1,
21756         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21757         },
21758         /* class_tid: 20, wh_plus, table: ext_em_0 */
21759         {
21760         .description = "act_rec_ptr",
21761         .field_bit_size = 33,
21762         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
21763         .result_operand = {
21764                 (BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR >> 8) & 0xff,
21765                 BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR & 0xff,
21766                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
21767                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21768         },
21769         {
21770         .description = "ext_flow_ctr",
21771         .field_bit_size = 1,
21772         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
21773         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
21774                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21775         },
21776         {
21777         .description = "act_rec_int",
21778         .field_bit_size = 1,
21779         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21780         },
21781         {
21782         .description = "act_rec_size",
21783         .field_bit_size = 5,
21784         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
21785         .result_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,
21786                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21787         },
21788         {
21789         .description = "key_size",
21790         .field_bit_size = 9,
21791         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
21792         .result_operand = {
21793                 (0x00c5 >> 8) & 0xff,
21794                 0x00c5 & 0xff,
21795                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
21796                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21797         },
21798         {
21799         .description = "reserved",
21800         .field_bit_size = 11,
21801         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21802         },
21803         {
21804         .description = "strength",
21805         .field_bit_size = 2,
21806         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
21807         .result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,
21808                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21809         },
21810         {
21811         .description = "l1_cacheable",
21812         .field_bit_size = 1,
21813         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21814         },
21815         {
21816         .description = "valid",
21817         .field_bit_size = 1,
21818         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
21819         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
21820                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21821         },
21822         /* class_tid: 20, wh_plus, table: int_em_0 */
21823         {
21824         .description = "act_rec_ptr",
21825         .field_bit_size = 33,
21826         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
21827         .result_operand = {
21828                 (BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR >> 8) & 0xff,
21829                 BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR & 0xff,
21830                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
21831                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21832         },
21833         {
21834         .description = "ext_flow_ctr",
21835         .field_bit_size = 1,
21836         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
21837         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
21838                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21839         },
21840         {
21841         .description = "act_rec_int",
21842         .field_bit_size = 1,
21843         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21844         },
21845         {
21846         .description = "act_rec_size",
21847         .field_bit_size = 5,
21848         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
21849         .result_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,
21850                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21851         },
21852         {
21853         .description = "key_size",
21854         .field_bit_size = 9,
21855         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
21856         .result_operand = {
21857                 (0x00c5 >> 8) & 0xff,
21858                 0x00c5 & 0xff,
21859                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
21860                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21861         },
21862         {
21863         .description = "reserved",
21864         .field_bit_size = 11,
21865         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21866         },
21867         {
21868         .description = "strength",
21869         .field_bit_size = 2,
21870         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
21871         .result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,
21872                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21873         },
21874         {
21875         .description = "l1_cacheable",
21876         .field_bit_size = 1,
21877         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21878         },
21879         {
21880         .description = "valid",
21881         .field_bit_size = 1,
21882         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
21883         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
21884                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21885         },
21886         /* class_tid: 21, wh_plus, table: l2_cntxt_cache_0 */
21887         {
21888         .description = "l2_cntxt_id",
21889         .field_bit_size = 10,
21890         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
21891         .result_operand = {
21892                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
21893                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
21894                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
21895                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21896         },
21897         /* class_tid: 21, wh_plus, table: l2_cntxt_tcam_0 */
21898         {
21899         .description = "l2_cntxt_id",
21900         .field_bit_size = 10,
21901         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
21902         .result_operand = {
21903                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
21904                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
21905                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
21906                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21907         },
21908         {
21909         .description = "prof_func_id",
21910         .field_bit_size = 7,
21911         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
21912         .result_operand = {
21913                 (BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID >> 8) & 0xff,
21914                 BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID & 0xff,
21915                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
21916                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21917         },
21918         {
21919         .description = "l2_byp_lkup_en",
21920         .field_bit_size = 1,
21921         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21922         },
21923         {
21924         .description = "parif",
21925         .field_bit_size = 4,
21926         .result_opcode = BNXT_ULP_MAPPER_OPC_IF_COMP_FIELD_THEN_CF_ELSE_CF,
21927         .result_operand = {
21928                 (BNXT_ULP_CF_IDX_MATCH_PORT_IS_VFREP >> 8) & 0xff,
21929                 BNXT_ULP_CF_IDX_MATCH_PORT_IS_VFREP & 0xff,
21930                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
21931                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
21932         .result_operand_true = {
21933                 (BNXT_ULP_CF_IDX_LOOPBACK_PARIF >> 8) & 0xff,
21934                 BNXT_ULP_CF_IDX_LOOPBACK_PARIF & 0xff,
21935                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
21936                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
21937         .result_operand_false = {
21938                 (BNXT_ULP_CF_IDX_DRV_FUNC_PARIF >> 8) & 0xff,
21939                 BNXT_ULP_CF_IDX_DRV_FUNC_PARIF & 0xff,
21940                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
21941                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21942         },
21943         {
21944         .description = "allowed_pri",
21945         .field_bit_size = 8,
21946         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21947         },
21948         {
21949         .description = "default_pri",
21950         .field_bit_size = 3,
21951         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21952         },
21953         {
21954         .description = "allowed_tpid",
21955         .field_bit_size = 6,
21956         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21957         },
21958         {
21959         .description = "default_tpid",
21960         .field_bit_size = 3,
21961         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21962         },
21963         {
21964         .description = "bd_act_en",
21965         .field_bit_size = 1,
21966         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21967         },
21968         {
21969         .description = "sp_rec_ptr",
21970         .field_bit_size = 16,
21971         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
21972         .result_operand = {
21973                 (BNXT_ULP_REGFILE_INDEX_MAIN_SP_PTR >> 8) & 0xff,
21974                 BNXT_ULP_REGFILE_INDEX_MAIN_SP_PTR & 0xff,
21975                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
21976                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21977         },
21978         {
21979         .description = "byp_sp_lkup",
21980         .field_bit_size = 1,
21981         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
21982         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
21983                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21984         },
21985         {
21986         .description = "pri_anti_spoof_ctl",
21987         .field_bit_size = 2,
21988         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21989         },
21990         {
21991         .description = "tpid_anti_spoof_ctl",
21992         .field_bit_size = 2,
21993         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21994         },
21995         /* class_tid: 21, wh_plus, table: profile_tcam_cache_0 */
21996         {
21997         .description = "em_profile_id",
21998         .field_bit_size = 10,
21999         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
22000         .result_operand = {
22001                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
22002                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
22003                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
22004                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22005         },
22006         /* class_tid: 21, wh_plus, table: profile_tcam_0 */
22007         {
22008         .description = "wc_key_id",
22009         .field_bit_size = 4,
22010         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22011         },
22012         {
22013         .description = "wc_profile_id",
22014         .field_bit_size = 8,
22015         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22016         },
22017         {
22018         .description = "wc_search_en",
22019         .field_bit_size = 1,
22020         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22021         },
22022         {
22023         .description = "em_key_mask",
22024         .field_bit_size = 10,
22025         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
22026         .result_operand = {
22027                 (0x00f9 >> 8) & 0xff,
22028                 0x00f9 & 0xff,
22029                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
22030                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22031         },
22032         {
22033         .description = "em_key_id",
22034         .field_bit_size = 5,
22035         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
22036         .result_operand = {0x15, 0x00, 0x00, 0x00, 0x00, 0x00,
22037                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22038         },
22039         {
22040         .description = "em_profile_id",
22041         .field_bit_size = 8,
22042         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
22043         .result_operand = {
22044                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
22045                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
22046                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
22047                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22048         },
22049         {
22050         .description = "em_search_en",
22051         .field_bit_size = 1,
22052         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
22053         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
22054                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22055         },
22056         {
22057         .description = "pl_byp_lkup_en",
22058         .field_bit_size = 1,
22059         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22060         },
22061         /* class_tid: 21, wh_plus, table: ext_em_0 */
22062         {
22063         .description = "act_rec_ptr",
22064         .field_bit_size = 33,
22065         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
22066         .result_operand = {
22067                 (BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR >> 8) & 0xff,
22068                 BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR & 0xff,
22069                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
22070                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22071         },
22072         {
22073         .description = "ext_flow_ctr",
22074         .field_bit_size = 1,
22075         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
22076         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
22077                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22078         },
22079         {
22080         .description = "act_rec_int",
22081         .field_bit_size = 1,
22082         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22083         },
22084         {
22085         .description = "act_rec_size",
22086         .field_bit_size = 5,
22087         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
22088         .result_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,
22089                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22090         },
22091         {
22092         .description = "key_size",
22093         .field_bit_size = 9,
22094         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
22095         .result_operand = {
22096                 (0x00c5 >> 8) & 0xff,
22097                 0x00c5 & 0xff,
22098                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
22099                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22100         },
22101         {
22102         .description = "reserved",
22103         .field_bit_size = 11,
22104         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22105         },
22106         {
22107         .description = "strength",
22108         .field_bit_size = 2,
22109         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
22110         .result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,
22111                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22112         },
22113         {
22114         .description = "l1_cacheable",
22115         .field_bit_size = 1,
22116         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22117         },
22118         {
22119         .description = "valid",
22120         .field_bit_size = 1,
22121         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
22122         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
22123                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22124         },
22125         /* class_tid: 21, wh_plus, table: int_em_0 */
22126         {
22127         .description = "act_rec_ptr",
22128         .field_bit_size = 33,
22129         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
22130         .result_operand = {
22131                 (BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR >> 8) & 0xff,
22132                 BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR & 0xff,
22133                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
22134                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22135         },
22136         {
22137         .description = "ext_flow_ctr",
22138         .field_bit_size = 1,
22139         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
22140         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
22141                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22142         },
22143         {
22144         .description = "act_rec_int",
22145         .field_bit_size = 1,
22146         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22147         },
22148         {
22149         .description = "act_rec_size",
22150         .field_bit_size = 5,
22151         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
22152         .result_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,
22153                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22154         },
22155         {
22156         .description = "key_size",
22157         .field_bit_size = 9,
22158         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
22159         .result_operand = {
22160                 (0x00c5 >> 8) & 0xff,
22161                 0x00c5 & 0xff,
22162                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
22163                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22164         },
22165         {
22166         .description = "reserved",
22167         .field_bit_size = 11,
22168         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22169         },
22170         {
22171         .description = "strength",
22172         .field_bit_size = 2,
22173         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
22174         .result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,
22175                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22176         },
22177         {
22178         .description = "l1_cacheable",
22179         .field_bit_size = 1,
22180         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22181         },
22182         {
22183         .description = "valid",
22184         .field_bit_size = 1,
22185         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
22186         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
22187                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22188         },
22189         /* class_tid: 22, wh_plus, table: l2_cntxt_cache_0 */
22190         {
22191         .description = "l2_cntxt_id",
22192         .field_bit_size = 10,
22193         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
22194         .result_operand = {
22195                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
22196                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
22197                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
22198                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22199         },
22200         /* class_tid: 22, wh_plus, table: l2_cntxt_0 */
22201         {
22202         .description = "l2_cntxt_id",
22203         .field_bit_size = 10,
22204         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
22205         .result_operand = {
22206                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
22207                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
22208                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
22209                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22210         },
22211         {
22212         .description = "prof_func_id",
22213         .field_bit_size = 7,
22214         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
22215         .result_operand = {
22216                 (BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID >> 8) & 0xff,
22217                 BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID & 0xff,
22218                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
22219                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22220         },
22221         {
22222         .description = "l2_byp_lkup_en",
22223         .field_bit_size = 1,
22224         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22225         },
22226         {
22227         .description = "parif",
22228         .field_bit_size = 4,
22229         .result_opcode = BNXT_ULP_MAPPER_OPC_IF_COMP_FIELD_THEN_CF_ELSE_CF,
22230         .result_operand = {
22231                 (BNXT_ULP_CF_IDX_MATCH_PORT_IS_VFREP >> 8) & 0xff,
22232                 BNXT_ULP_CF_IDX_MATCH_PORT_IS_VFREP & 0xff,
22233                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
22234                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
22235         .result_operand_true = {
22236                 (BNXT_ULP_CF_IDX_LOOPBACK_PARIF >> 8) & 0xff,
22237                 BNXT_ULP_CF_IDX_LOOPBACK_PARIF & 0xff,
22238                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
22239                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
22240         .result_operand_false = {
22241                 (BNXT_ULP_CF_IDX_DRV_FUNC_PARIF >> 8) & 0xff,
22242                 BNXT_ULP_CF_IDX_DRV_FUNC_PARIF & 0xff,
22243                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
22244                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22245         },
22246         {
22247         .description = "allowed_pri",
22248         .field_bit_size = 8,
22249         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22250         },
22251         {
22252         .description = "default_pri",
22253         .field_bit_size = 3,
22254         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22255         },
22256         {
22257         .description = "allowed_tpid",
22258         .field_bit_size = 6,
22259         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22260         },
22261         {
22262         .description = "default_tpid",
22263         .field_bit_size = 3,
22264         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22265         },
22266         {
22267         .description = "bd_act_en",
22268         .field_bit_size = 1,
22269         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22270         },
22271         {
22272         .description = "sp_rec_ptr",
22273         .field_bit_size = 16,
22274         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
22275         .result_operand = {
22276                 (BNXT_ULP_REGFILE_INDEX_MAIN_SP_PTR >> 8) & 0xff,
22277                 BNXT_ULP_REGFILE_INDEX_MAIN_SP_PTR & 0xff,
22278                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
22279                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22280         },
22281         {
22282         .description = "byp_sp_lkup",
22283         .field_bit_size = 1,
22284         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
22285         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
22286                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22287         },
22288         {
22289         .description = "pri_anti_spoof_ctl",
22290         .field_bit_size = 2,
22291         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22292         },
22293         {
22294         .description = "tpid_anti_spoof_ctl",
22295         .field_bit_size = 2,
22296         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22297         },
22298         /* class_tid: 22, wh_plus, table: profile_tcam_cache_0 */
22299         {
22300         .description = "em_profile_id",
22301         .field_bit_size = 10,
22302         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
22303         .result_operand = {
22304                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
22305                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
22306                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
22307                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22308         },
22309         /* class_tid: 22, wh_plus, table: profile_tcam_0 */
22310         {
22311         .description = "wc_key_id",
22312         .field_bit_size = 4,
22313         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22314         },
22315         {
22316         .description = "wc_profile_id",
22317         .field_bit_size = 8,
22318         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22319         },
22320         {
22321         .description = "wc_search_en",
22322         .field_bit_size = 1,
22323         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22324         },
22325         {
22326         .description = "em_key_mask",
22327         .field_bit_size = 10,
22328         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
22329         .result_operand = {
22330                 (0x00f9 >> 8) & 0xff,
22331                 0x00f9 & 0xff,
22332                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
22333                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22334         },
22335         {
22336         .description = "em_key_id",
22337         .field_bit_size = 5,
22338         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
22339         .result_operand = {0x19, 0x00, 0x00, 0x00, 0x00, 0x00,
22340                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22341         },
22342         {
22343         .description = "em_profile_id",
22344         .field_bit_size = 8,
22345         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
22346         .result_operand = {
22347                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
22348                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
22349                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
22350                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22351         },
22352         {
22353         .description = "em_search_en",
22354         .field_bit_size = 1,
22355         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
22356         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
22357                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22358         },
22359         {
22360         .description = "pl_byp_lkup_en",
22361         .field_bit_size = 1,
22362         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22363         },
22364         /* class_tid: 22, wh_plus, table: ext_em_0 */
22365         {
22366         .description = "act_rec_ptr",
22367         .field_bit_size = 33,
22368         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
22369         .result_operand = {
22370                 (BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR >> 8) & 0xff,
22371                 BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR & 0xff,
22372                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
22373                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22374         },
22375         {
22376         .description = "ext_flow_ctr",
22377         .field_bit_size = 1,
22378         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
22379         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
22380                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22381         },
22382         {
22383         .description = "act_rec_int",
22384         .field_bit_size = 1,
22385         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22386         },
22387         {
22388         .description = "act_rec_size",
22389         .field_bit_size = 5,
22390         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
22391         .result_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,
22392                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22393         },
22394         {
22395         .description = "key_size",
22396         .field_bit_size = 9,
22397         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
22398         .result_operand = {
22399                 (0x0185 >> 8) & 0xff,
22400                 0x0185 & 0xff,
22401                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
22402                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22403         },
22404         {
22405         .description = "reserved",
22406         .field_bit_size = 11,
22407         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22408         },
22409         {
22410         .description = "strength",
22411         .field_bit_size = 2,
22412         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
22413         .result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,
22414                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22415         },
22416         {
22417         .description = "l1_cacheable",
22418         .field_bit_size = 1,
22419         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22420         },
22421         {
22422         .description = "valid",
22423         .field_bit_size = 1,
22424         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
22425         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
22426                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22427         },
22428         /* class_tid: 22, wh_plus, table: int_em_0 */
22429         {
22430         .description = "act_rec_ptr",
22431         .field_bit_size = 33,
22432         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
22433         .result_operand = {
22434                 (BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR >> 8) & 0xff,
22435                 BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR & 0xff,
22436                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
22437                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22438         },
22439         {
22440         .description = "ext_flow_ctr",
22441         .field_bit_size = 1,
22442         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
22443         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
22444                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22445         },
22446         {
22447         .description = "act_rec_int",
22448         .field_bit_size = 1,
22449         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22450         },
22451         {
22452         .description = "act_rec_size",
22453         .field_bit_size = 5,
22454         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
22455         .result_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,
22456                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22457         },
22458         {
22459         .description = "key_size",
22460         .field_bit_size = 9,
22461         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
22462         .result_operand = {
22463                 (0x0185 >> 8) & 0xff,
22464                 0x0185 & 0xff,
22465                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
22466                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22467         },
22468         {
22469         .description = "reserved",
22470         .field_bit_size = 11,
22471         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22472         },
22473         {
22474         .description = "strength",
22475         .field_bit_size = 2,
22476         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
22477         .result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,
22478                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22479         },
22480         {
22481         .description = "l1_cacheable",
22482         .field_bit_size = 1,
22483         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22484         },
22485         {
22486         .description = "valid",
22487         .field_bit_size = 1,
22488         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
22489         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
22490                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22491         },
22492         /* class_tid: 23, wh_plus, table: l2_cntxt_cache_0 */
22493         {
22494         .description = "l2_cntxt_id",
22495         .field_bit_size = 10,
22496         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
22497         .result_operand = {
22498                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
22499                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
22500                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
22501                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22502         },
22503         /* class_tid: 23, wh_plus, table: l2_cntxt_tcam_0 */
22504         {
22505         .description = "l2_cntxt_id",
22506         .field_bit_size = 10,
22507         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
22508         .result_operand = {
22509                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
22510                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
22511                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
22512                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22513         },
22514         {
22515         .description = "prof_func_id",
22516         .field_bit_size = 7,
22517         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
22518         .result_operand = {
22519                 (BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID >> 8) & 0xff,
22520                 BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID & 0xff,
22521                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
22522                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22523         },
22524         {
22525         .description = "l2_byp_lkup_en",
22526         .field_bit_size = 1,
22527         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22528         },
22529         {
22530         .description = "parif",
22531         .field_bit_size = 4,
22532         .result_opcode = BNXT_ULP_MAPPER_OPC_IF_COMP_FIELD_THEN_CF_ELSE_CF,
22533         .result_operand = {
22534                 (BNXT_ULP_CF_IDX_MATCH_PORT_IS_VFREP >> 8) & 0xff,
22535                 BNXT_ULP_CF_IDX_MATCH_PORT_IS_VFREP & 0xff,
22536                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
22537                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
22538         .result_operand_true = {
22539                 (BNXT_ULP_CF_IDX_LOOPBACK_PARIF >> 8) & 0xff,
22540                 BNXT_ULP_CF_IDX_LOOPBACK_PARIF & 0xff,
22541                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
22542                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
22543         .result_operand_false = {
22544                 (BNXT_ULP_CF_IDX_DRV_FUNC_PARIF >> 8) & 0xff,
22545                 BNXT_ULP_CF_IDX_DRV_FUNC_PARIF & 0xff,
22546                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
22547                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22548         },
22549         {
22550         .description = "allowed_pri",
22551         .field_bit_size = 8,
22552         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22553         },
22554         {
22555         .description = "default_pri",
22556         .field_bit_size = 3,
22557         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22558         },
22559         {
22560         .description = "allowed_tpid",
22561         .field_bit_size = 6,
22562         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22563         },
22564         {
22565         .description = "default_tpid",
22566         .field_bit_size = 3,
22567         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22568         },
22569         {
22570         .description = "bd_act_en",
22571         .field_bit_size = 1,
22572         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22573         },
22574         {
22575         .description = "sp_rec_ptr",
22576         .field_bit_size = 16,
22577         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
22578         .result_operand = {
22579                 (BNXT_ULP_REGFILE_INDEX_MAIN_SP_PTR >> 8) & 0xff,
22580                 BNXT_ULP_REGFILE_INDEX_MAIN_SP_PTR & 0xff,
22581                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
22582                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22583         },
22584         {
22585         .description = "byp_sp_lkup",
22586         .field_bit_size = 1,
22587         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
22588         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
22589                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22590         },
22591         {
22592         .description = "pri_anti_spoof_ctl",
22593         .field_bit_size = 2,
22594         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22595         },
22596         {
22597         .description = "tpid_anti_spoof_ctl",
22598         .field_bit_size = 2,
22599         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22600         },
22601         /* class_tid: 23, wh_plus, table: profile_tcam_cache_0 */
22602         {
22603         .description = "em_profile_id",
22604         .field_bit_size = 10,
22605         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
22606         .result_operand = {
22607                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
22608                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
22609                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
22610                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22611         },
22612         /* class_tid: 23, wh_plus, table: profile_tcam_0 */
22613         {
22614         .description = "wc_key_id",
22615         .field_bit_size = 4,
22616         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22617         },
22618         {
22619         .description = "wc_profile_id",
22620         .field_bit_size = 8,
22621         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22622         },
22623         {
22624         .description = "wc_search_en",
22625         .field_bit_size = 1,
22626         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22627         },
22628         {
22629         .description = "em_key_mask",
22630         .field_bit_size = 10,
22631         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
22632         .result_operand = {
22633                 (0x00f9 >> 8) & 0xff,
22634                 0x00f9 & 0xff,
22635                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
22636                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22637         },
22638         {
22639         .description = "em_key_id",
22640         .field_bit_size = 5,
22641         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
22642         .result_operand = {0x19, 0x00, 0x00, 0x00, 0x00, 0x00,
22643                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22644         },
22645         {
22646         .description = "em_profile_id",
22647         .field_bit_size = 8,
22648         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
22649         .result_operand = {
22650                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
22651                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
22652                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
22653                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22654         },
22655         {
22656         .description = "em_search_en",
22657         .field_bit_size = 1,
22658         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
22659         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
22660                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22661         },
22662         {
22663         .description = "pl_byp_lkup_en",
22664         .field_bit_size = 1,
22665         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22666         },
22667         /* class_tid: 23, wh_plus, table: ext_em_0 */
22668         {
22669         .description = "act_rec_ptr",
22670         .field_bit_size = 33,
22671         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
22672         .result_operand = {
22673                 (BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR >> 8) & 0xff,
22674                 BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR & 0xff,
22675                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
22676                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22677         },
22678         {
22679         .description = "ext_flow_ctr",
22680         .field_bit_size = 1,
22681         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
22682         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
22683                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22684         },
22685         {
22686         .description = "act_rec_int",
22687         .field_bit_size = 1,
22688         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22689         },
22690         {
22691         .description = "act_rec_size",
22692         .field_bit_size = 5,
22693         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
22694         .result_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,
22695                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22696         },
22697         {
22698         .description = "key_size",
22699         .field_bit_size = 9,
22700         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
22701         .result_operand = {
22702                 (0x0185 >> 8) & 0xff,
22703                 0x0185 & 0xff,
22704                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
22705                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22706         },
22707         {
22708         .description = "reserved",
22709         .field_bit_size = 11,
22710         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22711         },
22712         {
22713         .description = "strength",
22714         .field_bit_size = 2,
22715         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
22716         .result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,
22717                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22718         },
22719         {
22720         .description = "l1_cacheable",
22721         .field_bit_size = 1,
22722         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22723         },
22724         {
22725         .description = "valid",
22726         .field_bit_size = 1,
22727         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
22728         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
22729                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22730         },
22731         /* class_tid: 23, wh_plus, table: int_em_0 */
22732         {
22733         .description = "act_rec_ptr",
22734         .field_bit_size = 33,
22735         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
22736         .result_operand = {
22737                 (BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR >> 8) & 0xff,
22738                 BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR & 0xff,
22739                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
22740                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22741         },
22742         {
22743         .description = "ext_flow_ctr",
22744         .field_bit_size = 1,
22745         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
22746         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
22747                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22748         },
22749         {
22750         .description = "act_rec_int",
22751         .field_bit_size = 1,
22752         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22753         },
22754         {
22755         .description = "act_rec_size",
22756         .field_bit_size = 5,
22757         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
22758         .result_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,
22759                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22760         },
22761         {
22762         .description = "key_size",
22763         .field_bit_size = 9,
22764         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
22765         .result_operand = {
22766                 (0x0185 >> 8) & 0xff,
22767                 0x0185 & 0xff,
22768                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
22769                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22770         },
22771         {
22772         .description = "reserved",
22773         .field_bit_size = 11,
22774         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22775         },
22776         {
22777         .description = "strength",
22778         .field_bit_size = 2,
22779         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
22780         .result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,
22781                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22782         },
22783         {
22784         .description = "l1_cacheable",
22785         .field_bit_size = 1,
22786         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22787         },
22788         {
22789         .description = "valid",
22790         .field_bit_size = 1,
22791         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
22792         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
22793                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22794         },
22795         /* class_tid: 24, wh_plus, table: l2_cntxt_tcam_0 */
22796         {
22797         .description = "l2_cntxt_id",
22798         .field_bit_size = 10,
22799         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
22800         .result_operand = {
22801                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
22802                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
22803                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
22804                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22805         },
22806         {
22807         .description = "prof_func_id",
22808         .field_bit_size = 7,
22809         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
22810         .result_operand = {
22811                 (BNXT_ULP_GLB_REGFILE_INDEX_L2_PROF_FUNC_ID >> 8) & 0xff,
22812                 BNXT_ULP_GLB_REGFILE_INDEX_L2_PROF_FUNC_ID & 0xff,
22813                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
22814                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22815         },
22816         {
22817         .description = "l2_byp_lkup_en",
22818         .field_bit_size = 1,
22819         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22820         },
22821         {
22822         .description = "parif",
22823         .field_bit_size = 4,
22824         .result_opcode = BNXT_ULP_MAPPER_OPC_IF_COMP_FIELD_THEN_CF_ELSE_CF,
22825         .result_operand = {
22826                 (BNXT_ULP_CF_IDX_MATCH_PORT_IS_VFREP >> 8) & 0xff,
22827                 BNXT_ULP_CF_IDX_MATCH_PORT_IS_VFREP & 0xff,
22828                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
22829                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
22830         .result_operand_true = {
22831                 (BNXT_ULP_CF_IDX_LOOPBACK_PARIF >> 8) & 0xff,
22832                 BNXT_ULP_CF_IDX_LOOPBACK_PARIF & 0xff,
22833                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
22834                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
22835         .result_operand_false = {
22836                 (BNXT_ULP_CF_IDX_DRV_FUNC_PARIF >> 8) & 0xff,
22837                 BNXT_ULP_CF_IDX_DRV_FUNC_PARIF & 0xff,
22838                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
22839                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22840         },
22841         {
22842         .description = "allowed_pri",
22843         .field_bit_size = 8,
22844         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22845         },
22846         {
22847         .description = "default_pri",
22848         .field_bit_size = 3,
22849         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22850         },
22851         {
22852         .description = "allowed_tpid",
22853         .field_bit_size = 6,
22854         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22855         },
22856         {
22857         .description = "default_tpid",
22858         .field_bit_size = 3,
22859         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22860         },
22861         {
22862         .description = "bd_act_en",
22863         .field_bit_size = 1,
22864         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22865         },
22866         {
22867         .description = "sp_rec_ptr",
22868         .field_bit_size = 16,
22869         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
22870         .result_operand = {
22871                 (BNXT_ULP_REGFILE_INDEX_MAIN_SP_PTR >> 8) & 0xff,
22872                 BNXT_ULP_REGFILE_INDEX_MAIN_SP_PTR & 0xff,
22873                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
22874                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22875         },
22876         {
22877         .description = "byp_sp_lkup",
22878         .field_bit_size = 1,
22879         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
22880         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
22881                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22882         },
22883         {
22884         .description = "pri_anti_spoof_ctl",
22885         .field_bit_size = 2,
22886         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22887         },
22888         {
22889         .description = "tpid_anti_spoof_ctl",
22890         .field_bit_size = 2,
22891         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22892         },
22893         /* class_tid: 24, wh_plus, table: profile_tcam_cache_0 */
22894         {
22895         .description = "em_profile_id",
22896         .field_bit_size = 10,
22897         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
22898         .result_operand = {
22899                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
22900                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
22901                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
22902                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22903         },
22904         /* class_tid: 24, wh_plus, table: profile_tcam_0 */
22905         {
22906         .description = "wc_key_id",
22907         .field_bit_size = 4,
22908         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22909         },
22910         {
22911         .description = "wc_profile_id",
22912         .field_bit_size = 8,
22913         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22914         },
22915         {
22916         .description = "wc_search_en",
22917         .field_bit_size = 1,
22918         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22919         },
22920         {
22921         .description = "em_key_mask",
22922         .field_bit_size = 10,
22923         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
22924         .result_operand = {
22925                 (0x0003 >> 8) & 0xff,
22926                 0x0003 & 0xff,
22927                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
22928                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22929         },
22930         {
22931         .description = "em_key_id",
22932         .field_bit_size = 5,
22933         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
22934         .result_operand = {0x0c, 0x00, 0x00, 0x00, 0x00, 0x00,
22935                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22936         },
22937         {
22938         .description = "em_profile_id",
22939         .field_bit_size = 8,
22940         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
22941         .result_operand = {
22942                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
22943                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
22944                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
22945                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22946         },
22947         {
22948         .description = "em_search_en",
22949         .field_bit_size = 1,
22950         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
22951         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
22952                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22953         },
22954         {
22955         .description = "pl_byp_lkup_en",
22956         .field_bit_size = 1,
22957         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22958         },
22959         /* class_tid: 24, wh_plus, table: ext_em_0 */
22960         {
22961         .description = "act_rec_ptr",
22962         .field_bit_size = 33,
22963         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
22964         .result_operand = {
22965                 (BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR >> 8) & 0xff,
22966                 BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR & 0xff,
22967                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
22968                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22969         },
22970         {
22971         .description = "ext_flow_ctr",
22972         .field_bit_size = 1,
22973         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
22974         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
22975                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22976         },
22977         {
22978         .description = "act_rec_int",
22979         .field_bit_size = 1,
22980         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22981         },
22982         {
22983         .description = "act_rec_size",
22984         .field_bit_size = 5,
22985         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
22986         .result_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,
22987                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22988         },
22989         {
22990         .description = "key_size",
22991         .field_bit_size = 9,
22992         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
22993         .result_operand = {
22994                 (0x0061 >> 8) & 0xff,
22995                 0x0061 & 0xff,
22996                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
22997                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22998         },
22999         {
23000         .description = "reserved",
23001         .field_bit_size = 11,
23002         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
23003         },
23004         {
23005         .description = "strength",
23006         .field_bit_size = 2,
23007         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
23008         .result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,
23009                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
23010         },
23011         {
23012         .description = "l1_cacheable",
23013         .field_bit_size = 1,
23014         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
23015         },
23016         {
23017         .description = "valid",
23018         .field_bit_size = 1,
23019         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
23020         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
23021                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
23022         },
23023         /* class_tid: 24, wh_plus, table: int_em_0 */
23024         {
23025         .description = "act_rec_ptr",
23026         .field_bit_size = 33,
23027         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
23028         .result_operand = {
23029                 (BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR >> 8) & 0xff,
23030                 BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR & 0xff,
23031                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
23032                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
23033         },
23034         {
23035         .description = "ext_flow_ctr",
23036         .field_bit_size = 1,
23037         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
23038         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
23039                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
23040         },
23041         {
23042         .description = "act_rec_int",
23043         .field_bit_size = 1,
23044         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
23045         },
23046         {
23047         .description = "act_rec_size",
23048         .field_bit_size = 5,
23049         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
23050         .result_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,
23051                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
23052         },
23053         {
23054         .description = "key_size",
23055         .field_bit_size = 9,
23056         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
23057         .result_operand = {
23058                 (0x0061 >> 8) & 0xff,
23059                 0x0061 & 0xff,
23060                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
23061                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
23062         },
23063         {
23064         .description = "reserved",
23065         .field_bit_size = 11,
23066         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
23067         },
23068         {
23069         .description = "strength",
23070         .field_bit_size = 2,
23071         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
23072         .result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,
23073                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
23074         },
23075         {
23076         .description = "l1_cacheable",
23077         .field_bit_size = 1,
23078         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
23079         },
23080         {
23081         .description = "valid",
23082         .field_bit_size = 1,
23083         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
23084         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
23085                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
23086         },
23087         /* class_tid: 25, wh_plus, table: l2_cntxt_tcam_0 */
23088         {
23089         .description = "l2_cntxt_id",
23090         .field_bit_size = 10,
23091         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
23092         .result_operand = {
23093                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
23094                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
23095                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
23096                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
23097         },
23098         {
23099         .description = "prof_func_id",
23100         .field_bit_size = 7,
23101         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
23102         .result_operand = {
23103                 (BNXT_ULP_GLB_REGFILE_INDEX_L2_PROF_FUNC_ID >> 8) & 0xff,
23104                 BNXT_ULP_GLB_REGFILE_INDEX_L2_PROF_FUNC_ID & 0xff,
23105                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
23106                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
23107         },
23108         {
23109         .description = "l2_byp_lkup_en",
23110         .field_bit_size = 1,
23111         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
23112         },
23113         {
23114         .description = "parif",
23115         .field_bit_size = 4,
23116         .result_opcode = BNXT_ULP_MAPPER_OPC_IF_COMP_FIELD_THEN_CF_ELSE_CF,
23117         .result_operand = {
23118                 (BNXT_ULP_CF_IDX_MATCH_PORT_IS_VFREP >> 8) & 0xff,
23119                 BNXT_ULP_CF_IDX_MATCH_PORT_IS_VFREP & 0xff,
23120                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
23121                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
23122         .result_operand_true = {
23123                 (BNXT_ULP_CF_IDX_LOOPBACK_PARIF >> 8) & 0xff,
23124                 BNXT_ULP_CF_IDX_LOOPBACK_PARIF & 0xff,
23125                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
23126                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
23127         .result_operand_false = {
23128                 (BNXT_ULP_CF_IDX_DRV_FUNC_PARIF >> 8) & 0xff,
23129                 BNXT_ULP_CF_IDX_DRV_FUNC_PARIF & 0xff,
23130                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
23131                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
23132         },
23133         {
23134         .description = "allowed_pri",
23135         .field_bit_size = 8,
23136         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
23137         },
23138         {
23139         .description = "default_pri",
23140         .field_bit_size = 3,
23141         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
23142         },
23143         {
23144         .description = "allowed_tpid",
23145         .field_bit_size = 6,
23146         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
23147         },
23148         {
23149         .description = "default_tpid",
23150         .field_bit_size = 3,
23151         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
23152         },
23153         {
23154         .description = "bd_act_en",
23155         .field_bit_size = 1,
23156         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
23157         },
23158         {
23159         .description = "sp_rec_ptr",
23160         .field_bit_size = 16,
23161         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
23162         .result_operand = {
23163                 (BNXT_ULP_REGFILE_INDEX_MAIN_SP_PTR >> 8) & 0xff,
23164                 BNXT_ULP_REGFILE_INDEX_MAIN_SP_PTR & 0xff,
23165                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
23166                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
23167         },
23168         {
23169         .description = "byp_sp_lkup",
23170         .field_bit_size = 1,
23171         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
23172         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
23173                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
23174         },
23175         {
23176         .description = "pri_anti_spoof_ctl",
23177         .field_bit_size = 2,
23178         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
23179         },
23180         {
23181         .description = "tpid_anti_spoof_ctl",
23182         .field_bit_size = 2,
23183         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
23184         },
23185         /* class_tid: 25, wh_plus, table: profile_tcam_cache_0 */
23186         {
23187         .description = "em_profile_id",
23188         .field_bit_size = 10,
23189         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
23190         .result_operand = {
23191                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
23192                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
23193                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
23194                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
23195         },
23196         /* class_tid: 25, wh_plus, table: profile_tcam_0 */
23197         {
23198         .description = "wc_key_id",
23199         .field_bit_size = 4,
23200         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
23201         },
23202         {
23203         .description = "wc_profile_id",
23204         .field_bit_size = 8,
23205         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
23206         },
23207         {
23208         .description = "wc_search_en",
23209         .field_bit_size = 1,
23210         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
23211         },
23212         {
23213         .description = "em_key_mask",
23214         .field_bit_size = 10,
23215         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
23216         .result_operand = {
23217                 (0x0003 >> 8) & 0xff,
23218                 0x0003 & 0xff,
23219                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
23220                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
23221         },
23222         {
23223         .description = "em_key_id",
23224         .field_bit_size = 5,
23225         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
23226         .result_operand = {0x0c, 0x00, 0x00, 0x00, 0x00, 0x00,
23227                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
23228         },
23229         {
23230         .description = "em_profile_id",
23231         .field_bit_size = 8,
23232         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
23233         .result_operand = {
23234                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
23235                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
23236                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
23237                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
23238         },
23239         {
23240         .description = "em_search_en",
23241         .field_bit_size = 1,
23242         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
23243         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
23244                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
23245         },
23246         {
23247         .description = "pl_byp_lkup_en",
23248         .field_bit_size = 1,
23249         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
23250         },
23251         /* class_tid: 25, wh_plus, table: ext_em_0 */
23252         {
23253         .description = "act_rec_ptr",
23254         .field_bit_size = 33,
23255         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
23256         .result_operand = {
23257                 (BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR >> 8) & 0xff,
23258                 BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR & 0xff,
23259                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
23260                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
23261         },
23262         {
23263         .description = "ext_flow_ctr",
23264         .field_bit_size = 1,
23265         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
23266         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
23267                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
23268         },
23269         {
23270         .description = "act_rec_int",
23271         .field_bit_size = 1,
23272         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
23273         },
23274         {
23275         .description = "act_rec_size",
23276         .field_bit_size = 5,
23277         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
23278         .result_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,
23279                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
23280         },
23281         {
23282         .description = "key_size",
23283         .field_bit_size = 9,
23284         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
23285         .result_operand = {
23286                 (0x0061 >> 8) & 0xff,
23287                 0x0061 & 0xff,
23288                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
23289                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
23290         },
23291         {
23292         .description = "reserved",
23293         .field_bit_size = 11,
23294         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
23295         },
23296         {
23297         .description = "strength",
23298         .field_bit_size = 2,
23299         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
23300         .result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,
23301                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
23302         },
23303         {
23304         .description = "l1_cacheable",
23305         .field_bit_size = 1,
23306         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
23307         },
23308         {
23309         .description = "valid",
23310         .field_bit_size = 1,
23311         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
23312         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
23313                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
23314         },
23315         /* class_tid: 25, wh_plus, table: int_em_0 */
23316         {
23317         .description = "act_rec_ptr",
23318         .field_bit_size = 33,
23319         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
23320         .result_operand = {
23321                 (BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR >> 8) & 0xff,
23322                 BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR & 0xff,
23323                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
23324                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
23325         },
23326         {
23327         .description = "ext_flow_ctr",
23328         .field_bit_size = 1,
23329         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
23330         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
23331                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
23332         },
23333         {
23334         .description = "act_rec_int",
23335         .field_bit_size = 1,
23336         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
23337         },
23338         {
23339         .description = "act_rec_size",
23340         .field_bit_size = 5,
23341         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
23342         .result_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,
23343                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
23344         },
23345         {
23346         .description = "key_size",
23347         .field_bit_size = 9,
23348         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
23349         .result_operand = {
23350                 (0x0061 >> 8) & 0xff,
23351                 0x0061 & 0xff,
23352                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
23353                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
23354         },
23355         {
23356         .description = "reserved",
23357         .field_bit_size = 11,
23358         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
23359         },
23360         {
23361         .description = "strength",
23362         .field_bit_size = 2,
23363         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
23364         .result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,
23365                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
23366         },
23367         {
23368         .description = "l1_cacheable",
23369         .field_bit_size = 1,
23370         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
23371         },
23372         {
23373         .description = "valid",
23374         .field_bit_size = 1,
23375         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
23376         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
23377                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
23378         }
23379 };
23380
23381 struct bnxt_ulp_mapper_ident_info ulp_wh_plus_class_ident_list[] = {
23382         /* class_tid: 1, wh_plus, table: l2_cntxt_cache_0 */
23383         {
23384         .description = "l2_cntxt_id",
23385         .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,
23386         .ident_type = TF_IDENT_TYPE_L2_CTXT_HIGH,
23387         .regfile_idx = BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0,
23388         .ident_bit_size = 10,
23389         .ident_bit_pos = 0
23390         },
23391         /* class_tid: 2, wh_plus, table: l2_cntxt_cache_0 */
23392         {
23393         .description = "l2_cntxt_id",
23394         .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,
23395         .ident_type = TF_IDENT_TYPE_L2_CTXT_HIGH,
23396         .regfile_idx = BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0,
23397         .ident_bit_size = 10,
23398         .ident_bit_pos = 0
23399         },
23400         /* class_tid: 4, wh_plus, table: egr_l2_cntxt_cache_0 */
23401         {
23402         .description = "l2_cntxt_id",
23403         .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,
23404         .ident_type = TF_IDENT_TYPE_L2_CTXT_HIGH,
23405         .regfile_idx = BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0,
23406         .ident_bit_size = 10,
23407         .ident_bit_pos = 0
23408         },
23409         /* class_tid: 6, wh_plus, table: l2_cntxt_tcam_0 */
23410         {
23411         .description = "l2_cntxt_id",
23412         .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,
23413         .ident_type = TF_IDENT_TYPE_L2_CTXT_HIGH,
23414         .regfile_idx = BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0,
23415         .ident_bit_size = 10,
23416         .ident_bit_pos = 0
23417         },
23418         /* class_tid: 6, wh_plus, table: profile_tcam_cache_0 */
23419         {
23420         .description = "em_profile_id",
23421         .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,
23422         .ident_type = TF_IDENT_TYPE_EM_PROF,
23423         .regfile_idx = BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0,
23424         .ident_bit_size = 10,
23425         .ident_bit_pos = 0
23426         },
23427         /* class_tid: 7, wh_plus, table: l2_cntxt_tcam_0 */
23428         {
23429         .description = "l2_cntxt_id",
23430         .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,
23431         .ident_type = TF_IDENT_TYPE_L2_CTXT_HIGH,
23432         .regfile_idx = BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0,
23433         .ident_bit_size = 10,
23434         .ident_bit_pos = 0
23435         },
23436         /* class_tid: 7, wh_plus, table: profile_tcam_cache_0 */
23437         {
23438         .description = "em_profile_id",
23439         .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,
23440         .ident_type = TF_IDENT_TYPE_EM_PROF,
23441         .regfile_idx = BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0,
23442         .ident_bit_size = 10,
23443         .ident_bit_pos = 0
23444         },
23445         /* class_tid: 8, wh_plus, table: l2_cntxt_cache_0 */
23446         {
23447         .description = "l2_cntxt_id",
23448         .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,
23449         .ident_type = TF_IDENT_TYPE_L2_CTXT_HIGH,
23450         .regfile_idx = BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0,
23451         .ident_bit_size = 10,
23452         .ident_bit_pos = 0
23453         },
23454         /* class_tid: 8, wh_plus, table: profile_tcam_cache_0 */
23455         {
23456         .description = "em_profile_id",
23457         .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,
23458         .ident_type = TF_IDENT_TYPE_EM_PROF,
23459         .regfile_idx = BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0,
23460         .ident_bit_size = 10,
23461         .ident_bit_pos = 0
23462         },
23463         /* class_tid: 9, wh_plus, table: l2_cntxt_cache_0 */
23464         {
23465         .description = "l2_cntxt_id",
23466         .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,
23467         .ident_type = TF_IDENT_TYPE_L2_CTXT_HIGH,
23468         .regfile_idx = BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0,
23469         .ident_bit_size = 10,
23470         .ident_bit_pos = 0
23471         },
23472         /* class_tid: 9, wh_plus, table: profile_tcam_cache_0 */
23473         {
23474         .description = "em_profile_id",
23475         .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,
23476         .ident_type = TF_IDENT_TYPE_EM_PROF,
23477         .regfile_idx = BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0,
23478         .ident_bit_size = 10,
23479         .ident_bit_pos = 0
23480         },
23481         /* class_tid: 10, wh_plus, table: l2_cntxt_cache_0 */
23482         {
23483         .description = "l2_cntxt_id",
23484         .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,
23485         .ident_type = TF_IDENT_TYPE_L2_CTXT_HIGH,
23486         .regfile_idx = BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0,
23487         .ident_bit_size = 10,
23488         .ident_bit_pos = 0
23489         },
23490         /* class_tid: 10, wh_plus, table: profile_tcam_cache_0 */
23491         {
23492         .description = "em_profile_id",
23493         .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,
23494         .ident_type = TF_IDENT_TYPE_EM_PROF,
23495         .regfile_idx = BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0,
23496         .ident_bit_size = 10,
23497         .ident_bit_pos = 0
23498         },
23499         /* class_tid: 11, wh_plus, table: l2_cntxt_cache_0 */
23500         {
23501         .description = "l2_cntxt_id",
23502         .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,
23503         .ident_type = TF_IDENT_TYPE_L2_CTXT_HIGH,
23504         .regfile_idx = BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0,
23505         .ident_bit_size = 10,
23506         .ident_bit_pos = 0
23507         },
23508         /* class_tid: 11, wh_plus, table: profile_tcam_cache_0 */
23509         {
23510         .description = "em_profile_id",
23511         .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,
23512         .ident_type = TF_IDENT_TYPE_EM_PROF,
23513         .regfile_idx = BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0,
23514         .ident_bit_size = 10,
23515         .ident_bit_pos = 0
23516         },
23517         /* class_tid: 12, wh_plus, table: l2_cntxt_tcam_0 */
23518         {
23519         .description = "l2_cntxt_id",
23520         .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,
23521         .ident_type = TF_IDENT_TYPE_L2_CTXT_HIGH,
23522         .regfile_idx = BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0,
23523         .ident_bit_size = 10,
23524         .ident_bit_pos = 0
23525         },
23526         /* class_tid: 12, wh_plus, table: profile_tcam_cache_0 */
23527         {
23528         .description = "em_profile_id",
23529         .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,
23530         .ident_type = TF_IDENT_TYPE_EM_PROF,
23531         .regfile_idx = BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0,
23532         .ident_bit_size = 10,
23533         .ident_bit_pos = 0
23534         },
23535         /* class_tid: 13, wh_plus, table: l2_cntxt_tcam_0 */
23536         {
23537         .description = "l2_cntxt_id",
23538         .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,
23539         .ident_type = TF_IDENT_TYPE_L2_CTXT_HIGH,
23540         .regfile_idx = BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0,
23541         .ident_bit_size = 10,
23542         .ident_bit_pos = 0
23543         },
23544         /* class_tid: 13, wh_plus, table: profile_tcam_cache_0 */
23545         {
23546         .description = "em_profile_id",
23547         .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,
23548         .ident_type = TF_IDENT_TYPE_EM_PROF,
23549         .regfile_idx = BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0,
23550         .ident_bit_size = 10,
23551         .ident_bit_pos = 0
23552         },
23553         /* class_tid: 14, wh_plus, table: l2_cntxt_tcam_0 */
23554         {
23555         .description = "l2_cntxt_id",
23556         .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,
23557         .ident_type = TF_IDENT_TYPE_L2_CTXT_HIGH,
23558         .regfile_idx = BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0,
23559         .ident_bit_size = 10,
23560         .ident_bit_pos = 0
23561         },
23562         /* class_tid: 14, wh_plus, table: profile_tcam_cache_0 */
23563         {
23564         .description = "em_profile_id",
23565         .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,
23566         .ident_type = TF_IDENT_TYPE_EM_PROF,
23567         .regfile_idx = BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0,
23568         .ident_bit_size = 10,
23569         .ident_bit_pos = 0
23570         },
23571         /* class_tid: 15, wh_plus, table: l2_cntxt_tcam_0 */
23572         {
23573         .description = "l2_cntxt_id",
23574         .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,
23575         .ident_type = TF_IDENT_TYPE_L2_CTXT_HIGH,
23576         .regfile_idx = BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0,
23577         .ident_bit_size = 10,
23578         .ident_bit_pos = 0
23579         },
23580         /* class_tid: 15, wh_plus, table: profile_tcam_cache_0 */
23581         {
23582         .description = "em_profile_id",
23583         .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,
23584         .ident_type = TF_IDENT_TYPE_EM_PROF,
23585         .regfile_idx = BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0,
23586         .ident_bit_size = 10,
23587         .ident_bit_pos = 0
23588         },
23589         /* class_tid: 16, wh_plus, table: l2_cntxt_tcam_0 */
23590         {
23591         .description = "l2_cntxt_id",
23592         .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,
23593         .ident_type = TF_IDENT_TYPE_L2_CTXT_HIGH,
23594         .regfile_idx = BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0,
23595         .ident_bit_size = 10,
23596         .ident_bit_pos = 0
23597         },
23598         /* class_tid: 16, wh_plus, table: profile_tcam_cache_0 */
23599         {
23600         .description = "em_profile_id",
23601         .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,
23602         .ident_type = TF_IDENT_TYPE_EM_PROF,
23603         .regfile_idx = BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0,
23604         .ident_bit_size = 10,
23605         .ident_bit_pos = 0
23606         },
23607         /* class_tid: 17, wh_plus, table: l2_cntxt_tcam_0 */
23608         {
23609         .description = "l2_cntxt_id",
23610         .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,
23611         .ident_type = TF_IDENT_TYPE_L2_CTXT_HIGH,
23612         .regfile_idx = BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0,
23613         .ident_bit_size = 10,
23614         .ident_bit_pos = 0
23615         },
23616         /* class_tid: 17, wh_plus, table: profile_tcam_cache_0 */
23617         {
23618         .description = "em_profile_id",
23619         .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,
23620         .ident_type = TF_IDENT_TYPE_EM_PROF,
23621         .regfile_idx = BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0,
23622         .ident_bit_size = 10,
23623         .ident_bit_pos = 0
23624         },
23625         /* class_tid: 18, wh_plus, table: l2_cntxt_tcam_0 */
23626         {
23627         .description = "l2_cntxt_id",
23628         .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,
23629         .ident_type = TF_IDENT_TYPE_L2_CTXT_HIGH,
23630         .regfile_idx = BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0,
23631         .ident_bit_size = 10,
23632         .ident_bit_pos = 0
23633         },
23634         /* class_tid: 18, wh_plus, table: profile_tcam_cache_0 */
23635         {
23636         .description = "em_profile_id",
23637         .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,
23638         .ident_type = TF_IDENT_TYPE_EM_PROF,
23639         .regfile_idx = BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0,
23640         .ident_bit_size = 10,
23641         .ident_bit_pos = 0
23642         },
23643         {
23644         .description = "em_profile_id",
23645         .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,
23646         .ident_type = TF_IDENT_TYPE_EM_PROF,
23647         .regfile_idx = BNXT_ULP_REGFILE_INDEX_WC_PROFILE_ID_0,
23648         .ident_bit_size = 10,
23649         .ident_bit_pos = 0
23650         },
23651         /* class_tid: 19, wh_plus, table: l2_cntxt_tcam_0 */
23652         {
23653         .description = "l2_cntxt_id",
23654         .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,
23655         .ident_type = TF_IDENT_TYPE_L2_CTXT_HIGH,
23656         .regfile_idx = BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0,
23657         .ident_bit_size = 10,
23658         .ident_bit_pos = 0
23659         },
23660         /* class_tid: 19, wh_plus, table: profile_tcam_cache_0 */
23661         {
23662         .description = "em_profile_id",
23663         .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,
23664         .ident_type = TF_IDENT_TYPE_EM_PROF,
23665         .regfile_idx = BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0,
23666         .ident_bit_size = 10,
23667         .ident_bit_pos = 0
23668         },
23669         {
23670         .description = "em_profile_id",
23671         .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,
23672         .ident_type = TF_IDENT_TYPE_EM_PROF,
23673         .regfile_idx = BNXT_ULP_REGFILE_INDEX_WC_PROFILE_ID_0,
23674         .ident_bit_size = 10,
23675         .ident_bit_pos = 0
23676         },
23677         /* class_tid: 20, wh_plus, table: l2_cntxt_cache_0 */
23678         {
23679         .description = "l2_cntxt_id",
23680         .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,
23681         .ident_type = TF_IDENT_TYPE_L2_CTXT_HIGH,
23682         .regfile_idx = BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0,
23683         .ident_bit_size = 10,
23684         .ident_bit_pos = 0
23685         },
23686         /* class_tid: 20, wh_plus, table: profile_tcam_cache_0 */
23687         {
23688         .description = "em_profile_id",
23689         .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,
23690         .ident_type = TF_IDENT_TYPE_EM_PROF,
23691         .regfile_idx = BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0,
23692         .ident_bit_size = 10,
23693         .ident_bit_pos = 0
23694         },
23695         /* class_tid: 21, wh_plus, table: l2_cntxt_cache_0 */
23696         {
23697         .description = "l2_cntxt_id",
23698         .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,
23699         .ident_type = TF_IDENT_TYPE_L2_CTXT_HIGH,
23700         .regfile_idx = BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0,
23701         .ident_bit_size = 10,
23702         .ident_bit_pos = 0
23703         },
23704         /* class_tid: 21, wh_plus, table: profile_tcam_cache_0 */
23705         {
23706         .description = "em_profile_id",
23707         .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,
23708         .ident_type = TF_IDENT_TYPE_EM_PROF,
23709         .regfile_idx = BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0,
23710         .ident_bit_size = 10,
23711         .ident_bit_pos = 0
23712         },
23713         /* class_tid: 22, wh_plus, table: l2_cntxt_cache_0 */
23714         {
23715         .description = "l2_cntxt_id",
23716         .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,
23717         .ident_type = TF_IDENT_TYPE_L2_CTXT_HIGH,
23718         .regfile_idx = BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0,
23719         .ident_bit_size = 10,
23720         .ident_bit_pos = 0
23721         },
23722         /* class_tid: 22, wh_plus, table: profile_tcam_cache_0 */
23723         {
23724         .description = "em_profile_id",
23725         .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,
23726         .ident_type = TF_IDENT_TYPE_EM_PROF,
23727         .regfile_idx = BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0,
23728         .ident_bit_size = 10,
23729         .ident_bit_pos = 0
23730         },
23731         /* class_tid: 23, wh_plus, table: l2_cntxt_cache_0 */
23732         {
23733         .description = "l2_cntxt_id",
23734         .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,
23735         .ident_type = TF_IDENT_TYPE_L2_CTXT_HIGH,
23736         .regfile_idx = BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0,
23737         .ident_bit_size = 10,
23738         .ident_bit_pos = 0
23739         },
23740         /* class_tid: 23, wh_plus, table: profile_tcam_cache_0 */
23741         {
23742         .description = "em_profile_id",
23743         .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,
23744         .ident_type = TF_IDENT_TYPE_EM_PROF,
23745         .regfile_idx = BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0,
23746         .ident_bit_size = 10,
23747         .ident_bit_pos = 0
23748         },
23749         /* class_tid: 24, wh_plus, table: l2_cntxt_tcam_0 */
23750         {
23751         .description = "l2_cntxt_id",
23752         .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,
23753         .ident_type = TF_IDENT_TYPE_L2_CTXT_HIGH,
23754         .regfile_idx = BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0,
23755         .ident_bit_size = 10,
23756         .ident_bit_pos = 0
23757         },
23758         /* class_tid: 24, wh_plus, table: profile_tcam_cache_0 */
23759         {
23760         .description = "em_profile_id",
23761         .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,
23762         .ident_type = TF_IDENT_TYPE_EM_PROF,
23763         .regfile_idx = BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0,
23764         .ident_bit_size = 10,
23765         .ident_bit_pos = 0
23766         },
23767         /* class_tid: 25, wh_plus, table: l2_cntxt_tcam_0 */
23768         {
23769         .description = "l2_cntxt_id",
23770         .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,
23771         .ident_type = TF_IDENT_TYPE_L2_CTXT_HIGH,
23772         .regfile_idx = BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0,
23773         .ident_bit_size = 10,
23774         .ident_bit_pos = 0
23775         },
23776         /* class_tid: 25, wh_plus, table: profile_tcam_cache_0 */
23777         {
23778         .description = "em_profile_id",
23779         .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,
23780         .ident_type = TF_IDENT_TYPE_EM_PROF,
23781         .regfile_idx = BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0,
23782         .ident_bit_size = 10,
23783         .ident_bit_pos = 0
23784         }
23785 };