net/bnxt: add conditional processing of templates
[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         .srch_b4_alloc = BNXT_ULP_SEARCH_BEFORE_ALLOC_NO,
230         .priority = BNXT_ULP_PRIORITY_LEVEL_0,
231         .key_start_idx = 1,
232         .blob_key_bit_size = 167,
233         .key_bit_size = 167,
234         .key_num_fields = 13,
235         .result_start_idx = 27,
236         .result_bit_size = 64,
237         .result_num_fields = 13,
238         .encap_num_fields = 0,
239         .ident_start_idx = 1,
240         .ident_nums = 0,
241         .mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,
242         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO
243         },
244         { /* class_tid: 1, wh_plus, table: parif_def_lkup_arec_ptr_0 */
245         .resource_func = BNXT_ULP_RESOURCE_FUNC_IF_TABLE,
246         .resource_type = TF_IF_TBL_TYPE_LKUP_PARIF_DFLT_ACT_REC_PTR,
247         .direction = TF_DIR_RX,
248         .result_start_idx = 40,
249         .result_bit_size = 32,
250         .result_num_fields = 1,
251         .encap_num_fields = 0,
252         .index_opcode = BNXT_ULP_INDEX_OPCODE_COMP_FIELD,
253         .index_operand = BNXT_ULP_CF_IDX_PHY_PORT_PARIF
254         },
255         { /* class_tid: 1, wh_plus, table: parif_def_arec_ptr_0 */
256         .resource_func = BNXT_ULP_RESOURCE_FUNC_IF_TABLE,
257         .resource_type = TF_IF_TBL_TYPE_PROF_PARIF_DFLT_ACT_REC_PTR,
258         .direction = TF_DIR_RX,
259         .result_start_idx = 41,
260         .result_bit_size = 32,
261         .result_num_fields = 1,
262         .encap_num_fields = 0,
263         .index_opcode = BNXT_ULP_INDEX_OPCODE_COMP_FIELD,
264         .index_operand = BNXT_ULP_CF_IDX_PHY_PORT_PARIF
265         },
266         { /* class_tid: 1, wh_plus, table: parif_def_err_arec_ptr_0 */
267         .resource_func = BNXT_ULP_RESOURCE_FUNC_IF_TABLE,
268         .resource_type = TF_IF_TBL_TYPE_PROF_PARIF_ERR_ACT_REC_PTR,
269         .direction = TF_DIR_RX,
270         .result_start_idx = 42,
271         .result_bit_size = 32,
272         .result_num_fields = 1,
273         .encap_num_fields = 0,
274         .index_opcode = BNXT_ULP_INDEX_OPCODE_COMP_FIELD,
275         .index_operand = BNXT_ULP_CF_IDX_PHY_PORT_PARIF
276         },
277         { /* class_tid: 2, wh_plus, table: int_full_act_record_0 */
278         .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
279         .resource_type = TF_TBL_TYPE_FULL_ACT_RECORD,
280         .resource_sub_type =
281                 BNXT_ULP_RESOURCE_SUB_TYPE_INDEX_TYPE_VFR_CFA_ACTION,
282         .direction = TF_DIR_TX,
283         .srch_b4_alloc = BNXT_ULP_SEARCH_BEFORE_ALLOC_NO,
284         .result_start_idx = 43,
285         .result_bit_size = 128,
286         .result_num_fields = 26,
287         .encap_num_fields = 0,
288         .mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,
289         .index_opcode = BNXT_ULP_INDEX_OPCODE_ALLOCATE,
290         .index_operand = BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR
291         },
292         { /* class_tid: 2, wh_plus, table: l2_cntxt_tcam_vfr_0 */
293         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
294         .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_LOW,
295         .cond_opcode = BNXT_ULP_COND_OPC_COMP_FIELD_IS_SET,
296         .cond_operand = BNXT_ULP_CF_IDX_VFR_MODE,
297         .direction = TF_DIR_TX,
298         .srch_b4_alloc = BNXT_ULP_SEARCH_BEFORE_ALLOC_NO,
299         .priority = BNXT_ULP_PRIORITY_LEVEL_0,
300         .key_start_idx = 14,
301         .blob_key_bit_size = 167,
302         .key_bit_size = 167,
303         .key_num_fields = 13,
304         .result_start_idx = 69,
305         .result_bit_size = 64,
306         .result_num_fields = 13,
307         .encap_num_fields = 0,
308         .ident_start_idx = 1,
309         .ident_nums = 0,
310         .mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,
311         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO
312         },
313         { /* class_tid: 2, wh_plus, table: l2_cntxt_cache_0 */
314         .resource_func = BNXT_ULP_RESOURCE_FUNC_INVALID,
315         .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_LOW,
316         .resource_sub_type =
317                 BNXT_ULP_RESOURCE_SUB_TYPE_CACHE_TYPE_L2_CNTXT_TCAM,
318         .cond_opcode = BNXT_ULP_COND_OPC_COMP_FIELD_NOT_SET,
319         .cond_operand = BNXT_ULP_CF_IDX_VFR_MODE,
320         .direction = TF_DIR_TX,
321         .key_start_idx = 27,
322         .blob_key_bit_size = 8,
323         .key_bit_size = 8,
324         .key_num_fields = 1,
325         .result_start_idx = 82,
326         .result_bit_size = 10,
327         .result_num_fields = 1,
328         .encap_num_fields = 0,
329         .ident_start_idx = 1,
330         .ident_nums = 1
331         },
332         { /* class_tid: 2, wh_plus, table: l2_cntxt_tcam_0 */
333         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
334         .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_LOW,
335         .cond_opcode = BNXT_ULP_COND_OPC_COMP_FIELD_NOT_SET,
336         .cond_operand = BNXT_ULP_CF_IDX_VFR_MODE,
337         .direction = TF_DIR_TX,
338         .srch_b4_alloc = BNXT_ULP_SEARCH_BEFORE_ALLOC_NO,
339         .priority = BNXT_ULP_PRIORITY_LEVEL_0,
340         .key_start_idx = 28,
341         .blob_key_bit_size = 167,
342         .key_bit_size = 167,
343         .key_num_fields = 13,
344         .result_start_idx = 83,
345         .result_bit_size = 64,
346         .result_num_fields = 13,
347         .encap_num_fields = 0,
348         .ident_start_idx = 2,
349         .ident_nums = 0,
350         .mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,
351         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO
352         },
353         { /* class_tid: 2, wh_plus, table: parif_def_lkup_arec_ptr_0 */
354         .resource_func = BNXT_ULP_RESOURCE_FUNC_IF_TABLE,
355         .resource_type = TF_IF_TBL_TYPE_LKUP_PARIF_DFLT_ACT_REC_PTR,
356         .direction = TF_DIR_TX,
357         .result_start_idx = 96,
358         .result_bit_size = 32,
359         .result_num_fields = 1,
360         .encap_num_fields = 0,
361         .index_opcode = BNXT_ULP_INDEX_OPCODE_COMP_FIELD,
362         .index_operand = BNXT_ULP_CF_IDX_DRV_FUNC_PARIF
363         },
364         { /* class_tid: 2, wh_plus, table: parif_def_arec_ptr_0 */
365         .resource_func = BNXT_ULP_RESOURCE_FUNC_IF_TABLE,
366         .resource_type = TF_IF_TBL_TYPE_PROF_PARIF_DFLT_ACT_REC_PTR,
367         .direction = TF_DIR_TX,
368         .result_start_idx = 97,
369         .result_bit_size = 32,
370         .result_num_fields = 1,
371         .encap_num_fields = 0,
372         .index_opcode = BNXT_ULP_INDEX_OPCODE_COMP_FIELD,
373         .index_operand = BNXT_ULP_CF_IDX_DRV_FUNC_PARIF
374         },
375         { /* class_tid: 2, wh_plus, table: parif_def_err_arec_ptr_0 */
376         .resource_func = BNXT_ULP_RESOURCE_FUNC_IF_TABLE,
377         .resource_type = TF_IF_TBL_TYPE_PROF_PARIF_ERR_ACT_REC_PTR,
378         .direction = TF_DIR_TX,
379         .result_start_idx = 98,
380         .result_bit_size = 32,
381         .result_num_fields = 1,
382         .encap_num_fields = 0,
383         .index_opcode = BNXT_ULP_INDEX_OPCODE_COMP_FIELD,
384         .index_operand = BNXT_ULP_CF_IDX_DRV_FUNC_PARIF
385         },
386         { /* class_tid: 3, wh_plus, table: egr_int_vtag_encap_record_0 */
387         .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
388         .resource_type = TF_TBL_TYPE_ACT_ENCAP_8B,
389         .resource_sub_type =
390                 BNXT_ULP_RESOURCE_SUB_TYPE_INDEX_TYPE_NORMAL,
391         .direction = TF_DIR_TX,
392         .srch_b4_alloc = BNXT_ULP_SEARCH_BEFORE_ALLOC_NO,
393         .result_start_idx = 99,
394         .result_bit_size = 0,
395         .result_num_fields = 0,
396         .encap_num_fields = 12,
397         .mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,
398         .index_opcode = BNXT_ULP_INDEX_OPCODE_ALLOCATE,
399         .index_operand = BNXT_ULP_REGFILE_INDEX_ENCAP_PTR_0
400         },
401         { /* class_tid: 3, wh_plus, table: egr_int_full_act_record_0 */
402         .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
403         .resource_type = TF_TBL_TYPE_FULL_ACT_RECORD,
404         .resource_sub_type =
405                 BNXT_ULP_RESOURCE_SUB_TYPE_INDEX_TYPE_VFR_CFA_ACTION,
406         .direction = TF_DIR_TX,
407         .srch_b4_alloc = BNXT_ULP_SEARCH_BEFORE_ALLOC_NO,
408         .result_start_idx = 111,
409         .result_bit_size = 128,
410         .result_num_fields = 26,
411         .encap_num_fields = 0,
412         .mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,
413         .index_opcode = BNXT_ULP_INDEX_OPCODE_ALLOCATE,
414         .index_operand = BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR
415         },
416         { /* class_tid: 3, wh_plus, table: egr_l2_cntxt_cache_0 */
417         .resource_func = BNXT_ULP_RESOURCE_FUNC_INVALID,
418         .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_LOW,
419         .resource_sub_type =
420                 BNXT_ULP_RESOURCE_SUB_TYPE_CACHE_TYPE_L2_CNTXT_TCAM,
421         .direction = TF_DIR_TX,
422         .key_start_idx = 41,
423         .blob_key_bit_size = 8,
424         .key_bit_size = 8,
425         .key_num_fields = 1,
426         .result_start_idx = 137,
427         .result_bit_size = 0,
428         .result_num_fields = 0,
429         .encap_num_fields = 0,
430         .ident_start_idx = 2,
431         .ident_nums = 0
432         },
433         { /* class_tid: 3, wh_plus, table: egr_l2_cntxt_tcam_0 */
434         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
435         .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_LOW,
436         .direction = TF_DIR_TX,
437         .srch_b4_alloc = BNXT_ULP_SEARCH_BEFORE_ALLOC_NO,
438         .priority = BNXT_ULP_PRIORITY_LEVEL_0,
439         .key_start_idx = 42,
440         .blob_key_bit_size = 167,
441         .key_bit_size = 167,
442         .key_num_fields = 13,
443         .result_start_idx = 137,
444         .result_bit_size = 64,
445         .result_num_fields = 13,
446         .encap_num_fields = 0,
447         .ident_start_idx = 2,
448         .ident_nums = 0,
449         .mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,
450         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO
451         },
452         { /* class_tid: 3, wh_plus, table: ing_int_full_act_record_0 */
453         .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
454         .resource_type = TF_TBL_TYPE_FULL_ACT_RECORD,
455         .resource_sub_type =
456                 BNXT_ULP_RESOURCE_SUB_TYPE_INDEX_TYPE_NORMAL,
457         .direction = TF_DIR_RX,
458         .srch_b4_alloc = BNXT_ULP_SEARCH_BEFORE_ALLOC_NO,
459         .result_start_idx = 150,
460         .result_bit_size = 128,
461         .result_num_fields = 26,
462         .encap_num_fields = 0,
463         .mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,
464         .index_opcode = BNXT_ULP_INDEX_OPCODE_ALLOCATE,
465         .index_operand = BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR
466         },
467         { /* class_tid: 3, wh_plus, table: ing_l2_cntxt_dtagged_0 */
468         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
469         .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_HIGH,
470         .direction = TF_DIR_RX,
471         .srch_b4_alloc = BNXT_ULP_SEARCH_BEFORE_ALLOC_NO,
472         .priority = BNXT_ULP_PRIORITY_LEVEL_0,
473         .key_start_idx = 55,
474         .blob_key_bit_size = 167,
475         .key_bit_size = 167,
476         .key_num_fields = 13,
477         .result_start_idx = 176,
478         .result_bit_size = 64,
479         .result_num_fields = 13,
480         .encap_num_fields = 0,
481         .ident_start_idx = 2,
482         .ident_nums = 0,
483         .mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,
484         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO
485         },
486         { /* class_tid: 3, wh_plus, table: ing_l2_cntxt_stagged_0 */
487         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
488         .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_HIGH,
489         .direction = TF_DIR_RX,
490         .srch_b4_alloc = BNXT_ULP_SEARCH_BEFORE_ALLOC_NO,
491         .priority = BNXT_ULP_PRIORITY_LEVEL_0,
492         .key_start_idx = 68,
493         .blob_key_bit_size = 167,
494         .key_bit_size = 167,
495         .key_num_fields = 13,
496         .result_start_idx = 189,
497         .result_bit_size = 64,
498         .result_num_fields = 13,
499         .encap_num_fields = 0,
500         .ident_start_idx = 2,
501         .ident_nums = 0,
502         .mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,
503         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO
504         },
505         { /* class_tid: 4, wh_plus, table: egr_l2_cntxt_cache_0 */
506         .resource_func = BNXT_ULP_RESOURCE_FUNC_INVALID,
507         .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_LOW,
508         .resource_sub_type =
509                 BNXT_ULP_RESOURCE_SUB_TYPE_CACHE_TYPE_L2_CNTXT_TCAM,
510         .direction = TF_DIR_TX,
511         .key_start_idx = 81,
512         .blob_key_bit_size = 8,
513         .key_bit_size = 8,
514         .key_num_fields = 1,
515         .result_start_idx = 202,
516         .result_bit_size = 10,
517         .result_num_fields = 1,
518         .encap_num_fields = 0,
519         .ident_start_idx = 2,
520         .ident_nums = 1
521         },
522         { /* class_tid: 4, wh_plus, table: egr_l2_cntxt_tcam_0 */
523         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
524         .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_LOW,
525         .direction = TF_DIR_TX,
526         .srch_b4_alloc = BNXT_ULP_SEARCH_BEFORE_ALLOC_NO,
527         .priority = BNXT_ULP_PRIORITY_LEVEL_0,
528         .key_start_idx = 82,
529         .blob_key_bit_size = 167,
530         .key_bit_size = 167,
531         .key_num_fields = 13,
532         .result_start_idx = 203,
533         .result_bit_size = 64,
534         .result_num_fields = 13,
535         .encap_num_fields = 0,
536         .ident_start_idx = 3,
537         .ident_nums = 0,
538         .mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,
539         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO
540         },
541         { /* class_tid: 4, wh_plus, table: egr_parif_def_lkup_arec_ptr_0 */
542         .resource_func = BNXT_ULP_RESOURCE_FUNC_IF_TABLE,
543         .resource_type = TF_IF_TBL_TYPE_LKUP_PARIF_DFLT_ACT_REC_PTR,
544         .direction = TF_DIR_TX,
545         .result_start_idx = 216,
546         .result_bit_size = 32,
547         .result_num_fields = 1,
548         .encap_num_fields = 0,
549         .index_opcode = BNXT_ULP_INDEX_OPCODE_CONSTANT,
550         .index_operand = BNXT_ULP_SYM_VF_FUNC_PARIF
551         },
552         { /* class_tid: 4, wh_plus, table: egr_parif_def_arec_ptr_0 */
553         .resource_func = BNXT_ULP_RESOURCE_FUNC_IF_TABLE,
554         .resource_type = TF_IF_TBL_TYPE_PROF_PARIF_DFLT_ACT_REC_PTR,
555         .direction = TF_DIR_TX,
556         .result_start_idx = 217,
557         .result_bit_size = 32,
558         .result_num_fields = 1,
559         .encap_num_fields = 0,
560         .index_opcode = BNXT_ULP_INDEX_OPCODE_CONSTANT,
561         .index_operand = BNXT_ULP_SYM_VF_FUNC_PARIF
562         },
563         { /* class_tid: 4, wh_plus, table: egr_parif_def_err_arec_ptr_0 */
564         .resource_func = BNXT_ULP_RESOURCE_FUNC_IF_TABLE,
565         .resource_type = TF_IF_TBL_TYPE_PROF_PARIF_ERR_ACT_REC_PTR,
566         .direction = TF_DIR_TX,
567         .result_start_idx = 218,
568         .result_bit_size = 32,
569         .result_num_fields = 1,
570         .encap_num_fields = 0,
571         .index_opcode = BNXT_ULP_INDEX_OPCODE_CONSTANT,
572         .index_operand = BNXT_ULP_SYM_VF_FUNC_PARIF
573         },
574         { /* class_tid: 4, wh_plus, table: ing_int_full_act_record_0 */
575         .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
576         .resource_type = TF_TBL_TYPE_FULL_ACT_RECORD,
577         .resource_sub_type =
578                 BNXT_ULP_RESOURCE_SUB_TYPE_INDEX_TYPE_NORMAL,
579         .direction = TF_DIR_RX,
580         .srch_b4_alloc = BNXT_ULP_SEARCH_BEFORE_ALLOC_NO,
581         .result_start_idx = 219,
582         .result_bit_size = 128,
583         .result_num_fields = 26,
584         .encap_num_fields = 0,
585         .mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_SET_VFR_FLAG,
586         .index_opcode = BNXT_ULP_INDEX_OPCODE_ALLOCATE,
587         .index_operand = BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR
588         },
589         { /* class_tid: 4, wh_plus, table: ing_l2_cntxt_tcam_0 */
590         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
591         .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_HIGH,
592         .direction = TF_DIR_RX,
593         .srch_b4_alloc = BNXT_ULP_SEARCH_BEFORE_ALLOC_NO,
594         .priority = BNXT_ULP_PRIORITY_LEVEL_0,
595         .key_start_idx = 95,
596         .blob_key_bit_size = 167,
597         .key_bit_size = 167,
598         .key_num_fields = 13,
599         .result_start_idx = 245,
600         .result_bit_size = 64,
601         .result_num_fields = 13,
602         .encap_num_fields = 0,
603         .ident_start_idx = 3,
604         .ident_nums = 0,
605         .mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,
606         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO
607         },
608         { /* class_tid: 5, wh_plus, table: int_full_act_record_0 */
609         .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
610         .resource_type = TF_TBL_TYPE_FULL_ACT_RECORD,
611         .resource_sub_type =
612                 BNXT_ULP_RESOURCE_SUB_TYPE_INDEX_TYPE_VFR_CFA_ACTION,
613         .direction = TF_DIR_TX,
614         .srch_b4_alloc = BNXT_ULP_SEARCH_BEFORE_ALLOC_NO,
615         .result_start_idx = 258,
616         .result_bit_size = 128,
617         .result_num_fields = 26,
618         .encap_num_fields = 0,
619         .mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,
620         .index_opcode = BNXT_ULP_INDEX_OPCODE_GLOBAL,
621         .index_operand = BNXT_ULP_GLB_REGFILE_INDEX_GLB_LB_AREC_PTR
622         },
623         { /* class_tid: 6, wh_plus, table: l2_cntxt_tcam_0 */
624         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
625         .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_HIGH,
626         .direction = TF_DIR_RX,
627         .srch_b4_alloc = BNXT_ULP_SEARCH_BEFORE_ALLOC_SEARCH_IF_HIT_SKIP,
628         .priority = BNXT_ULP_PRIORITY_LEVEL_0,
629         .key_start_idx = 108,
630         .blob_key_bit_size = 167,
631         .key_bit_size = 167,
632         .key_num_fields = 13,
633         .result_start_idx = 284,
634         .result_bit_size = 64,
635         .result_num_fields = 13,
636         .encap_num_fields = 0,
637         .ident_start_idx = 3,
638         .ident_nums = 1,
639         .mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,
640         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO
641         },
642         { /* class_tid: 6, wh_plus, table: profile_tcam_cache_0 */
643         .resource_func = BNXT_ULP_RESOURCE_FUNC_INVALID,
644         .resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,
645         .resource_sub_type =
646                 BNXT_ULP_RESOURCE_SUB_TYPE_CACHE_TYPE_PROFILE_TCAM,
647         .direction = TF_DIR_RX,
648         .key_start_idx = 121,
649         .blob_key_bit_size = 16,
650         .key_bit_size = 16,
651         .key_num_fields = 3,
652         .result_start_idx = 297,
653         .result_bit_size = 10,
654         .result_num_fields = 1,
655         .encap_num_fields = 0,
656         .ident_start_idx = 4,
657         .ident_nums = 1
658         },
659         { /* class_tid: 6, wh_plus, table: profile_tcam_0 */
660         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
661         .resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,
662         .direction = TF_DIR_RX,
663         .srch_b4_alloc = BNXT_ULP_SEARCH_BEFORE_ALLOC_NO,
664         .priority = BNXT_ULP_PRIORITY_LEVEL_1,
665         .key_start_idx = 124,
666         .blob_key_bit_size = 81,
667         .key_bit_size = 81,
668         .key_num_fields = 43,
669         .result_start_idx = 298,
670         .result_bit_size = 38,
671         .result_num_fields = 8,
672         .encap_num_fields = 0,
673         .ident_start_idx = 5,
674         .ident_nums = 0,
675         .mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,
676         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO
677         },
678         { /* class_tid: 6, wh_plus, table: ext_em_0 */
679         .resource_func = BNXT_ULP_RESOURCE_FUNC_EXT_EM_TABLE,
680         .resource_type = TF_MEM_EXTERNAL,
681         .mem_type_opcode = BNXT_ULP_MEM_TYPE_OPCODE_EXECUTE_IF_EXT,
682         .direction = TF_DIR_RX,
683         .key_start_idx = 167,
684         .blob_key_bit_size = 448,
685         .key_bit_size = 448,
686         .key_num_fields = 11,
687         .result_start_idx = 306,
688         .result_bit_size = 64,
689         .result_num_fields = 9,
690         .encap_num_fields = 0,
691         .ident_start_idx = 5,
692         .ident_nums = 0,
693         .mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_SET_IF_MARK_ACTION,
694         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES
695         },
696         { /* class_tid: 6, wh_plus, table: int_em_0 */
697         .resource_func = BNXT_ULP_RESOURCE_FUNC_INT_EM_TABLE,
698         .resource_type = TF_MEM_INTERNAL,
699         .mem_type_opcode = BNXT_ULP_MEM_TYPE_OPCODE_EXECUTE_IF_INT,
700         .direction = TF_DIR_RX,
701         .key_start_idx = 178,
702         .blob_key_bit_size = 200,
703         .key_bit_size = 200,
704         .key_num_fields = 11,
705         .result_start_idx = 315,
706         .result_bit_size = 64,
707         .result_num_fields = 9,
708         .encap_num_fields = 0,
709         .ident_start_idx = 5,
710         .ident_nums = 0,
711         .mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_SET_IF_MARK_ACTION,
712         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES
713         },
714         { /* class_tid: 7, wh_plus, table: l2_cntxt_tcam_0 */
715         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
716         .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_HIGH,
717         .direction = TF_DIR_RX,
718         .srch_b4_alloc = BNXT_ULP_SEARCH_BEFORE_ALLOC_SEARCH_IF_HIT_SKIP,
719         .priority = BNXT_ULP_PRIORITY_LEVEL_0,
720         .key_start_idx = 189,
721         .blob_key_bit_size = 167,
722         .key_bit_size = 167,
723         .key_num_fields = 13,
724         .result_start_idx = 324,
725         .result_bit_size = 64,
726         .result_num_fields = 13,
727         .encap_num_fields = 0,
728         .ident_start_idx = 5,
729         .ident_nums = 1,
730         .mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,
731         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO
732         },
733         { /* class_tid: 7, wh_plus, table: profile_tcam_cache_0 */
734         .resource_func = BNXT_ULP_RESOURCE_FUNC_INVALID,
735         .resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,
736         .resource_sub_type =
737                 BNXT_ULP_RESOURCE_SUB_TYPE_CACHE_TYPE_PROFILE_TCAM,
738         .direction = TF_DIR_RX,
739         .key_start_idx = 202,
740         .blob_key_bit_size = 16,
741         .key_bit_size = 16,
742         .key_num_fields = 3,
743         .result_start_idx = 337,
744         .result_bit_size = 10,
745         .result_num_fields = 1,
746         .encap_num_fields = 0,
747         .ident_start_idx = 6,
748         .ident_nums = 1
749         },
750         { /* class_tid: 7, wh_plus, table: profile_tcam_0 */
751         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
752         .resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,
753         .direction = TF_DIR_RX,
754         .srch_b4_alloc = BNXT_ULP_SEARCH_BEFORE_ALLOC_NO,
755         .priority = BNXT_ULP_PRIORITY_LEVEL_1,
756         .key_start_idx = 205,
757         .blob_key_bit_size = 81,
758         .key_bit_size = 81,
759         .key_num_fields = 43,
760         .result_start_idx = 338,
761         .result_bit_size = 38,
762         .result_num_fields = 8,
763         .encap_num_fields = 0,
764         .ident_start_idx = 7,
765         .ident_nums = 0,
766         .mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,
767         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO
768         },
769         { /* class_tid: 7, wh_plus, table: ext_em_0 */
770         .resource_func = BNXT_ULP_RESOURCE_FUNC_EXT_EM_TABLE,
771         .resource_type = TF_MEM_EXTERNAL,
772         .mem_type_opcode = BNXT_ULP_MEM_TYPE_OPCODE_EXECUTE_IF_EXT,
773         .direction = TF_DIR_RX,
774         .key_start_idx = 248,
775         .blob_key_bit_size = 448,
776         .key_bit_size = 448,
777         .key_num_fields = 11,
778         .result_start_idx = 346,
779         .result_bit_size = 64,
780         .result_num_fields = 9,
781         .encap_num_fields = 0,
782         .ident_start_idx = 7,
783         .ident_nums = 0,
784         .mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_SET_IF_MARK_ACTION,
785         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES
786         },
787         { /* class_tid: 7, wh_plus, table: int_em_0 */
788         .resource_func = BNXT_ULP_RESOURCE_FUNC_INT_EM_TABLE,
789         .resource_type = TF_MEM_INTERNAL,
790         .mem_type_opcode = BNXT_ULP_MEM_TYPE_OPCODE_EXECUTE_IF_INT,
791         .direction = TF_DIR_RX,
792         .key_start_idx = 259,
793         .blob_key_bit_size = 200,
794         .key_bit_size = 200,
795         .key_num_fields = 11,
796         .result_start_idx = 355,
797         .result_bit_size = 64,
798         .result_num_fields = 9,
799         .encap_num_fields = 0,
800         .ident_start_idx = 7,
801         .ident_nums = 0,
802         .mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_SET_IF_MARK_ACTION,
803         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES
804         },
805         { /* class_tid: 8, wh_plus, table: l2_cntxt_cache_0 */
806         .resource_func = BNXT_ULP_RESOURCE_FUNC_INVALID,
807         .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_LOW,
808         .resource_sub_type =
809                 BNXT_ULP_RESOURCE_SUB_TYPE_CACHE_TYPE_L2_CNTXT_TCAM,
810         .direction = TF_DIR_RX,
811         .key_start_idx = 270,
812         .blob_key_bit_size = 8,
813         .key_bit_size = 8,
814         .key_num_fields = 1,
815         .result_start_idx = 364,
816         .result_bit_size = 10,
817         .result_num_fields = 1,
818         .encap_num_fields = 0,
819         .ident_start_idx = 7,
820         .ident_nums = 1
821         },
822         { /* class_tid: 8, wh_plus, table: l2_cntxt_tcam_0 */
823         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
824         .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_LOW,
825         .direction = TF_DIR_RX,
826         .srch_b4_alloc = BNXT_ULP_SEARCH_BEFORE_ALLOC_NO,
827         .priority = BNXT_ULP_PRIORITY_LEVEL_0,
828         .key_start_idx = 271,
829         .blob_key_bit_size = 167,
830         .key_bit_size = 167,
831         .key_num_fields = 13,
832         .result_start_idx = 365,
833         .result_bit_size = 64,
834         .result_num_fields = 13,
835         .encap_num_fields = 0,
836         .ident_start_idx = 8,
837         .ident_nums = 0,
838         .mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,
839         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO
840         },
841         { /* class_tid: 8, wh_plus, table: profile_tcam_cache_0 */
842         .resource_func = BNXT_ULP_RESOURCE_FUNC_INVALID,
843         .resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,
844         .resource_sub_type =
845                 BNXT_ULP_RESOURCE_SUB_TYPE_CACHE_TYPE_PROFILE_TCAM,
846         .direction = TF_DIR_RX,
847         .key_start_idx = 284,
848         .blob_key_bit_size = 16,
849         .key_bit_size = 16,
850         .key_num_fields = 3,
851         .result_start_idx = 378,
852         .result_bit_size = 10,
853         .result_num_fields = 1,
854         .encap_num_fields = 0,
855         .ident_start_idx = 8,
856         .ident_nums = 1
857         },
858         { /* class_tid: 8, wh_plus, table: profile_tcam_0 */
859         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
860         .resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,
861         .direction = TF_DIR_RX,
862         .srch_b4_alloc = BNXT_ULP_SEARCH_BEFORE_ALLOC_NO,
863         .priority = BNXT_ULP_PRIORITY_LEVEL_0,
864         .key_start_idx = 287,
865         .blob_key_bit_size = 81,
866         .key_bit_size = 81,
867         .key_num_fields = 43,
868         .result_start_idx = 379,
869         .result_bit_size = 38,
870         .result_num_fields = 8,
871         .encap_num_fields = 0,
872         .ident_start_idx = 9,
873         .ident_nums = 0,
874         .mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,
875         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO
876         },
877         { /* class_tid: 8, wh_plus, table: ext_em_0 */
878         .resource_func = BNXT_ULP_RESOURCE_FUNC_EXT_EM_TABLE,
879         .resource_type = TF_MEM_EXTERNAL,
880         .mem_type_opcode = BNXT_ULP_MEM_TYPE_OPCODE_EXECUTE_IF_EXT,
881         .direction = TF_DIR_RX,
882         .key_start_idx = 330,
883         .blob_key_bit_size = 448,
884         .key_bit_size = 448,
885         .key_num_fields = 11,
886         .result_start_idx = 387,
887         .result_bit_size = 64,
888         .result_num_fields = 9,
889         .encap_num_fields = 0,
890         .ident_start_idx = 9,
891         .ident_nums = 0,
892         .mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_SET_IF_MARK_ACTION,
893         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES
894         },
895         { /* class_tid: 8, wh_plus, table: int_em_0 */
896         .resource_func = BNXT_ULP_RESOURCE_FUNC_INT_EM_TABLE,
897         .resource_type = TF_MEM_INTERNAL,
898         .mem_type_opcode = BNXT_ULP_MEM_TYPE_OPCODE_EXECUTE_IF_INT,
899         .direction = TF_DIR_RX,
900         .key_start_idx = 341,
901         .blob_key_bit_size = 200,
902         .key_bit_size = 200,
903         .key_num_fields = 11,
904         .result_start_idx = 396,
905         .result_bit_size = 64,
906         .result_num_fields = 9,
907         .encap_num_fields = 0,
908         .ident_start_idx = 9,
909         .ident_nums = 0,
910         .mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_SET_IF_MARK_ACTION,
911         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES
912         },
913         { /* class_tid: 9, wh_plus, table: l2_cntxt_cache_0 */
914         .resource_func = BNXT_ULP_RESOURCE_FUNC_INVALID,
915         .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_LOW,
916         .resource_sub_type =
917                 BNXT_ULP_RESOURCE_SUB_TYPE_CACHE_TYPE_L2_CNTXT_TCAM,
918         .direction = TF_DIR_RX,
919         .key_start_idx = 352,
920         .blob_key_bit_size = 8,
921         .key_bit_size = 8,
922         .key_num_fields = 1,
923         .result_start_idx = 405,
924         .result_bit_size = 10,
925         .result_num_fields = 1,
926         .encap_num_fields = 0,
927         .ident_start_idx = 9,
928         .ident_nums = 1
929         },
930         { /* class_tid: 9, wh_plus, table: l2_cntxt_tcam_0 */
931         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
932         .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_LOW,
933         .direction = TF_DIR_RX,
934         .srch_b4_alloc = BNXT_ULP_SEARCH_BEFORE_ALLOC_NO,
935         .priority = BNXT_ULP_PRIORITY_LEVEL_0,
936         .key_start_idx = 353,
937         .blob_key_bit_size = 167,
938         .key_bit_size = 167,
939         .key_num_fields = 13,
940         .result_start_idx = 406,
941         .result_bit_size = 64,
942         .result_num_fields = 13,
943         .encap_num_fields = 0,
944         .ident_start_idx = 10,
945         .ident_nums = 0,
946         .mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,
947         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO
948         },
949         { /* class_tid: 9, wh_plus, table: profile_tcam_cache_0 */
950         .resource_func = BNXT_ULP_RESOURCE_FUNC_INVALID,
951         .resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,
952         .resource_sub_type =
953                 BNXT_ULP_RESOURCE_SUB_TYPE_CACHE_TYPE_PROFILE_TCAM,
954         .direction = TF_DIR_RX,
955         .key_start_idx = 366,
956         .blob_key_bit_size = 16,
957         .key_bit_size = 16,
958         .key_num_fields = 3,
959         .result_start_idx = 419,
960         .result_bit_size = 10,
961         .result_num_fields = 1,
962         .encap_num_fields = 0,
963         .ident_start_idx = 10,
964         .ident_nums = 1
965         },
966         { /* class_tid: 9, wh_plus, table: profile_tcam_0 */
967         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
968         .resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,
969         .direction = TF_DIR_RX,
970         .srch_b4_alloc = BNXT_ULP_SEARCH_BEFORE_ALLOC_NO,
971         .priority = BNXT_ULP_PRIORITY_LEVEL_0,
972         .key_start_idx = 369,
973         .blob_key_bit_size = 81,
974         .key_bit_size = 81,
975         .key_num_fields = 43,
976         .result_start_idx = 420,
977         .result_bit_size = 38,
978         .result_num_fields = 8,
979         .encap_num_fields = 0,
980         .ident_start_idx = 11,
981         .ident_nums = 0,
982         .mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,
983         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO
984         },
985         { /* class_tid: 9, wh_plus, table: ext_em_0 */
986         .resource_func = BNXT_ULP_RESOURCE_FUNC_EXT_EM_TABLE,
987         .resource_type = TF_MEM_EXTERNAL,
988         .mem_type_opcode = BNXT_ULP_MEM_TYPE_OPCODE_EXECUTE_IF_EXT,
989         .direction = TF_DIR_RX,
990         .key_start_idx = 412,
991         .blob_key_bit_size = 448,
992         .key_bit_size = 448,
993         .key_num_fields = 11,
994         .result_start_idx = 428,
995         .result_bit_size = 64,
996         .result_num_fields = 9,
997         .encap_num_fields = 0,
998         .ident_start_idx = 11,
999         .ident_nums = 0,
1000         .mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_SET_IF_MARK_ACTION,
1001         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES
1002         },
1003         { /* class_tid: 9, wh_plus, table: int_em_0 */
1004         .resource_func = BNXT_ULP_RESOURCE_FUNC_INT_EM_TABLE,
1005         .resource_type = TF_MEM_INTERNAL,
1006         .mem_type_opcode = BNXT_ULP_MEM_TYPE_OPCODE_EXECUTE_IF_INT,
1007         .direction = TF_DIR_RX,
1008         .key_start_idx = 423,
1009         .blob_key_bit_size = 200,
1010         .key_bit_size = 200,
1011         .key_num_fields = 11,
1012         .result_start_idx = 437,
1013         .result_bit_size = 64,
1014         .result_num_fields = 9,
1015         .encap_num_fields = 0,
1016         .ident_start_idx = 11,
1017         .ident_nums = 0,
1018         .mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_SET_IF_MARK_ACTION,
1019         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES
1020         },
1021         { /* class_tid: 10, wh_plus, table: l2_cntxt_cache_0 */
1022         .resource_func = BNXT_ULP_RESOURCE_FUNC_INVALID,
1023         .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_LOW,
1024         .resource_sub_type =
1025                 BNXT_ULP_RESOURCE_SUB_TYPE_CACHE_TYPE_L2_CNTXT_TCAM,
1026         .direction = TF_DIR_RX,
1027         .key_start_idx = 434,
1028         .blob_key_bit_size = 8,
1029         .key_bit_size = 8,
1030         .key_num_fields = 1,
1031         .result_start_idx = 446,
1032         .result_bit_size = 10,
1033         .result_num_fields = 1,
1034         .encap_num_fields = 0,
1035         .ident_start_idx = 11,
1036         .ident_nums = 1
1037         },
1038         { /* class_tid: 10, wh_plus, table: l2_cntxt_tcam_0 */
1039         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
1040         .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_LOW,
1041         .direction = TF_DIR_RX,
1042         .srch_b4_alloc = BNXT_ULP_SEARCH_BEFORE_ALLOC_NO,
1043         .priority = BNXT_ULP_PRIORITY_LEVEL_0,
1044         .key_start_idx = 435,
1045         .blob_key_bit_size = 167,
1046         .key_bit_size = 167,
1047         .key_num_fields = 13,
1048         .result_start_idx = 447,
1049         .result_bit_size = 64,
1050         .result_num_fields = 13,
1051         .encap_num_fields = 0,
1052         .ident_start_idx = 12,
1053         .ident_nums = 0,
1054         .mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,
1055         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO
1056         },
1057         { /* class_tid: 10, wh_plus, table: profile_tcam_cache_0 */
1058         .resource_func = BNXT_ULP_RESOURCE_FUNC_INVALID,
1059         .resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,
1060         .resource_sub_type =
1061                 BNXT_ULP_RESOURCE_SUB_TYPE_CACHE_TYPE_PROFILE_TCAM,
1062         .direction = TF_DIR_RX,
1063         .key_start_idx = 448,
1064         .blob_key_bit_size = 16,
1065         .key_bit_size = 16,
1066         .key_num_fields = 3,
1067         .result_start_idx = 460,
1068         .result_bit_size = 10,
1069         .result_num_fields = 1,
1070         .encap_num_fields = 0,
1071         .ident_start_idx = 12,
1072         .ident_nums = 1
1073         },
1074         { /* class_tid: 10, wh_plus, table: profile_tcam_0 */
1075         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
1076         .resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,
1077         .direction = TF_DIR_RX,
1078         .srch_b4_alloc = BNXT_ULP_SEARCH_BEFORE_ALLOC_NO,
1079         .priority = BNXT_ULP_PRIORITY_LEVEL_0,
1080         .key_start_idx = 451,
1081         .blob_key_bit_size = 81,
1082         .key_bit_size = 81,
1083         .key_num_fields = 43,
1084         .result_start_idx = 461,
1085         .result_bit_size = 38,
1086         .result_num_fields = 8,
1087         .encap_num_fields = 0,
1088         .ident_start_idx = 13,
1089         .ident_nums = 0,
1090         .mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,
1091         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO
1092         },
1093         { /* class_tid: 10, wh_plus, table: ext_em_0 */
1094         .resource_func = BNXT_ULP_RESOURCE_FUNC_EXT_EM_TABLE,
1095         .resource_type = TF_MEM_EXTERNAL,
1096         .mem_type_opcode = BNXT_ULP_MEM_TYPE_OPCODE_EXECUTE_IF_EXT,
1097         .direction = TF_DIR_RX,
1098         .key_start_idx = 494,
1099         .blob_key_bit_size = 448,
1100         .key_bit_size = 448,
1101         .key_num_fields = 11,
1102         .result_start_idx = 469,
1103         .result_bit_size = 64,
1104         .result_num_fields = 9,
1105         .encap_num_fields = 0,
1106         .ident_start_idx = 13,
1107         .ident_nums = 0,
1108         .mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_SET_IF_MARK_ACTION,
1109         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES
1110         },
1111         { /* class_tid: 10, wh_plus, table: int_em_0 */
1112         .resource_func = BNXT_ULP_RESOURCE_FUNC_INT_EM_TABLE,
1113         .resource_type = TF_MEM_INTERNAL,
1114         .mem_type_opcode = BNXT_ULP_MEM_TYPE_OPCODE_EXECUTE_IF_INT,
1115         .direction = TF_DIR_RX,
1116         .key_start_idx = 505,
1117         .blob_key_bit_size = 392,
1118         .key_bit_size = 392,
1119         .key_num_fields = 11,
1120         .result_start_idx = 478,
1121         .result_bit_size = 64,
1122         .result_num_fields = 9,
1123         .encap_num_fields = 0,
1124         .ident_start_idx = 13,
1125         .ident_nums = 0,
1126         .mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_SET_IF_MARK_ACTION,
1127         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES
1128         },
1129         { /* class_tid: 11, wh_plus, table: l2_cntxt_cache_0 */
1130         .resource_func = BNXT_ULP_RESOURCE_FUNC_INVALID,
1131         .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_LOW,
1132         .resource_sub_type =
1133                 BNXT_ULP_RESOURCE_SUB_TYPE_CACHE_TYPE_L2_CNTXT_TCAM,
1134         .direction = TF_DIR_RX,
1135         .key_start_idx = 516,
1136         .blob_key_bit_size = 8,
1137         .key_bit_size = 8,
1138         .key_num_fields = 1,
1139         .result_start_idx = 487,
1140         .result_bit_size = 10,
1141         .result_num_fields = 1,
1142         .encap_num_fields = 0,
1143         .ident_start_idx = 13,
1144         .ident_nums = 1
1145         },
1146         { /* class_tid: 11, wh_plus, table: l2_cntxt_tcam_0 */
1147         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
1148         .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_LOW,
1149         .direction = TF_DIR_RX,
1150         .srch_b4_alloc = BNXT_ULP_SEARCH_BEFORE_ALLOC_NO,
1151         .priority = BNXT_ULP_PRIORITY_LEVEL_0,
1152         .key_start_idx = 517,
1153         .blob_key_bit_size = 167,
1154         .key_bit_size = 167,
1155         .key_num_fields = 13,
1156         .result_start_idx = 488,
1157         .result_bit_size = 64,
1158         .result_num_fields = 13,
1159         .encap_num_fields = 0,
1160         .ident_start_idx = 14,
1161         .ident_nums = 0,
1162         .mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,
1163         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO
1164         },
1165         { /* class_tid: 11, wh_plus, table: profile_tcam_cache_0 */
1166         .resource_func = BNXT_ULP_RESOURCE_FUNC_INVALID,
1167         .resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,
1168         .resource_sub_type =
1169                 BNXT_ULP_RESOURCE_SUB_TYPE_CACHE_TYPE_PROFILE_TCAM,
1170         .direction = TF_DIR_RX,
1171         .key_start_idx = 530,
1172         .blob_key_bit_size = 16,
1173         .key_bit_size = 16,
1174         .key_num_fields = 3,
1175         .result_start_idx = 501,
1176         .result_bit_size = 10,
1177         .result_num_fields = 1,
1178         .encap_num_fields = 0,
1179         .ident_start_idx = 14,
1180         .ident_nums = 1
1181         },
1182         { /* class_tid: 11, wh_plus, table: profile_tcam_0 */
1183         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
1184         .resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,
1185         .direction = TF_DIR_RX,
1186         .srch_b4_alloc = BNXT_ULP_SEARCH_BEFORE_ALLOC_NO,
1187         .priority = BNXT_ULP_PRIORITY_LEVEL_0,
1188         .key_start_idx = 533,
1189         .blob_key_bit_size = 81,
1190         .key_bit_size = 81,
1191         .key_num_fields = 43,
1192         .result_start_idx = 502,
1193         .result_bit_size = 38,
1194         .result_num_fields = 8,
1195         .encap_num_fields = 0,
1196         .ident_start_idx = 15,
1197         .ident_nums = 0,
1198         .mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,
1199         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO
1200         },
1201         { /* class_tid: 11, wh_plus, table: ext_em_0 */
1202         .resource_func = BNXT_ULP_RESOURCE_FUNC_EXT_EM_TABLE,
1203         .resource_type = TF_MEM_EXTERNAL,
1204         .mem_type_opcode = BNXT_ULP_MEM_TYPE_OPCODE_EXECUTE_IF_EXT,
1205         .direction = TF_DIR_RX,
1206         .key_start_idx = 576,
1207         .blob_key_bit_size = 448,
1208         .key_bit_size = 448,
1209         .key_num_fields = 11,
1210         .result_start_idx = 510,
1211         .result_bit_size = 64,
1212         .result_num_fields = 9,
1213         .encap_num_fields = 0,
1214         .ident_start_idx = 15,
1215         .ident_nums = 0,
1216         .mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_SET_IF_MARK_ACTION,
1217         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES
1218         },
1219         { /* class_tid: 11, wh_plus, table: int_em_0 */
1220         .resource_func = BNXT_ULP_RESOURCE_FUNC_INT_EM_TABLE,
1221         .resource_type = TF_MEM_INTERNAL,
1222         .mem_type_opcode = BNXT_ULP_MEM_TYPE_OPCODE_EXECUTE_IF_INT,
1223         .direction = TF_DIR_RX,
1224         .key_start_idx = 587,
1225         .blob_key_bit_size = 392,
1226         .key_bit_size = 392,
1227         .key_num_fields = 11,
1228         .result_start_idx = 519,
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: 12, wh_plus, table: l2_cntxt_tcam_0 */
1238         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
1239         .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_HIGH,
1240         .direction = TF_DIR_RX,
1241         .srch_b4_alloc = BNXT_ULP_SEARCH_BEFORE_ALLOC_SEARCH_IF_HIT_SKIP,
1242         .priority = BNXT_ULP_PRIORITY_LEVEL_0,
1243         .key_start_idx = 598,
1244         .blob_key_bit_size = 167,
1245         .key_bit_size = 167,
1246         .key_num_fields = 13,
1247         .result_start_idx = 528,
1248         .result_bit_size = 64,
1249         .result_num_fields = 13,
1250         .encap_num_fields = 0,
1251         .ident_start_idx = 15,
1252         .ident_nums = 1,
1253         .mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,
1254         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO
1255         },
1256         { /* class_tid: 12, wh_plus, table: profile_tcam_cache_0 */
1257         .resource_func = BNXT_ULP_RESOURCE_FUNC_INVALID,
1258         .resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,
1259         .resource_sub_type =
1260                 BNXT_ULP_RESOURCE_SUB_TYPE_CACHE_TYPE_PROFILE_TCAM,
1261         .direction = TF_DIR_RX,
1262         .key_start_idx = 611,
1263         .blob_key_bit_size = 16,
1264         .key_bit_size = 16,
1265         .key_num_fields = 3,
1266         .result_start_idx = 541,
1267         .result_bit_size = 10,
1268         .result_num_fields = 1,
1269         .encap_num_fields = 0,
1270         .ident_start_idx = 16,
1271         .ident_nums = 1
1272         },
1273         { /* class_tid: 12, wh_plus, table: profile_tcam_0 */
1274         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
1275         .resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,
1276         .direction = TF_DIR_RX,
1277         .srch_b4_alloc = BNXT_ULP_SEARCH_BEFORE_ALLOC_NO,
1278         .priority = BNXT_ULP_PRIORITY_LEVEL_0,
1279         .key_start_idx = 614,
1280         .blob_key_bit_size = 81,
1281         .key_bit_size = 81,
1282         .key_num_fields = 43,
1283         .result_start_idx = 542,
1284         .result_bit_size = 38,
1285         .result_num_fields = 8,
1286         .encap_num_fields = 0,
1287         .ident_start_idx = 17,
1288         .ident_nums = 0,
1289         .mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,
1290         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO
1291         },
1292         { /* class_tid: 12, wh_plus, table: ext_em_0 */
1293         .resource_func = BNXT_ULP_RESOURCE_FUNC_EXT_EM_TABLE,
1294         .resource_type = TF_MEM_EXTERNAL,
1295         .mem_type_opcode = BNXT_ULP_MEM_TYPE_OPCODE_EXECUTE_IF_EXT,
1296         .direction = TF_DIR_RX,
1297         .key_start_idx = 657,
1298         .blob_key_bit_size = 448,
1299         .key_bit_size = 448,
1300         .key_num_fields = 11,
1301         .result_start_idx = 550,
1302         .result_bit_size = 64,
1303         .result_num_fields = 9,
1304         .encap_num_fields = 0,
1305         .ident_start_idx = 17,
1306         .ident_nums = 0,
1307         .mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_SET_IF_MARK_ACTION,
1308         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES
1309         },
1310         { /* class_tid: 12, wh_plus, table: int_em_0 */
1311         .resource_func = BNXT_ULP_RESOURCE_FUNC_INT_EM_TABLE,
1312         .resource_type = TF_MEM_INTERNAL,
1313         .mem_type_opcode = BNXT_ULP_MEM_TYPE_OPCODE_EXECUTE_IF_INT,
1314         .direction = TF_DIR_RX,
1315         .key_start_idx = 668,
1316         .blob_key_bit_size = 200,
1317         .key_bit_size = 200,
1318         .key_num_fields = 11,
1319         .result_start_idx = 559,
1320         .result_bit_size = 64,
1321         .result_num_fields = 9,
1322         .encap_num_fields = 0,
1323         .ident_start_idx = 17,
1324         .ident_nums = 0,
1325         .mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_SET_IF_MARK_ACTION,
1326         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES
1327         },
1328         { /* class_tid: 13, wh_plus, table: l2_cntxt_tcam_0 */
1329         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
1330         .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_HIGH,
1331         .direction = TF_DIR_RX,
1332         .srch_b4_alloc = BNXT_ULP_SEARCH_BEFORE_ALLOC_SEARCH_IF_HIT_SKIP,
1333         .priority = BNXT_ULP_PRIORITY_LEVEL_0,
1334         .key_start_idx = 679,
1335         .blob_key_bit_size = 167,
1336         .key_bit_size = 167,
1337         .key_num_fields = 13,
1338         .result_start_idx = 568,
1339         .result_bit_size = 64,
1340         .result_num_fields = 13,
1341         .encap_num_fields = 0,
1342         .ident_start_idx = 17,
1343         .ident_nums = 1,
1344         .mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,
1345         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO
1346         },
1347         { /* class_tid: 13, wh_plus, table: profile_tcam_cache_0 */
1348         .resource_func = BNXT_ULP_RESOURCE_FUNC_INVALID,
1349         .resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,
1350         .resource_sub_type =
1351                 BNXT_ULP_RESOURCE_SUB_TYPE_CACHE_TYPE_PROFILE_TCAM,
1352         .direction = TF_DIR_RX,
1353         .key_start_idx = 692,
1354         .blob_key_bit_size = 16,
1355         .key_bit_size = 16,
1356         .key_num_fields = 3,
1357         .result_start_idx = 581,
1358         .result_bit_size = 10,
1359         .result_num_fields = 1,
1360         .encap_num_fields = 0,
1361         .ident_start_idx = 18,
1362         .ident_nums = 1
1363         },
1364         { /* class_tid: 13, wh_plus, table: profile_tcam_0 */
1365         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
1366         .resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,
1367         .direction = TF_DIR_RX,
1368         .srch_b4_alloc = BNXT_ULP_SEARCH_BEFORE_ALLOC_NO,
1369         .priority = BNXT_ULP_PRIORITY_LEVEL_0,
1370         .key_start_idx = 695,
1371         .blob_key_bit_size = 81,
1372         .key_bit_size = 81,
1373         .key_num_fields = 43,
1374         .result_start_idx = 582,
1375         .result_bit_size = 38,
1376         .result_num_fields = 8,
1377         .encap_num_fields = 0,
1378         .ident_start_idx = 19,
1379         .ident_nums = 0,
1380         .mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,
1381         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO
1382         },
1383         { /* class_tid: 13, wh_plus, table: ext_em_0 */
1384         .resource_func = BNXT_ULP_RESOURCE_FUNC_EXT_EM_TABLE,
1385         .resource_type = TF_MEM_EXTERNAL,
1386         .mem_type_opcode = BNXT_ULP_MEM_TYPE_OPCODE_EXECUTE_IF_EXT,
1387         .direction = TF_DIR_RX,
1388         .key_start_idx = 738,
1389         .blob_key_bit_size = 448,
1390         .key_bit_size = 448,
1391         .key_num_fields = 11,
1392         .result_start_idx = 590,
1393         .result_bit_size = 64,
1394         .result_num_fields = 9,
1395         .encap_num_fields = 0,
1396         .ident_start_idx = 19,
1397         .ident_nums = 0,
1398         .mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_SET_IF_MARK_ACTION,
1399         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES
1400         },
1401         { /* class_tid: 13, wh_plus, table: int_em_0 */
1402         .resource_func = BNXT_ULP_RESOURCE_FUNC_INT_EM_TABLE,
1403         .resource_type = TF_MEM_INTERNAL,
1404         .mem_type_opcode = BNXT_ULP_MEM_TYPE_OPCODE_EXECUTE_IF_INT,
1405         .direction = TF_DIR_RX,
1406         .key_start_idx = 749,
1407         .blob_key_bit_size = 200,
1408         .key_bit_size = 200,
1409         .key_num_fields = 11,
1410         .result_start_idx = 599,
1411         .result_bit_size = 64,
1412         .result_num_fields = 9,
1413         .encap_num_fields = 0,
1414         .ident_start_idx = 19,
1415         .ident_nums = 0,
1416         .mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_SET_IF_MARK_ACTION,
1417         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES
1418         },
1419         { /* class_tid: 14, wh_plus, table: l2_cntxt_tcam_0 */
1420         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
1421         .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_HIGH,
1422         .direction = TF_DIR_RX,
1423         .srch_b4_alloc = BNXT_ULP_SEARCH_BEFORE_ALLOC_SEARCH_IF_HIT_SKIP,
1424         .priority = BNXT_ULP_PRIORITY_LEVEL_0,
1425         .key_start_idx = 760,
1426         .blob_key_bit_size = 167,
1427         .key_bit_size = 167,
1428         .key_num_fields = 13,
1429         .result_start_idx = 608,
1430         .result_bit_size = 64,
1431         .result_num_fields = 13,
1432         .encap_num_fields = 0,
1433         .ident_start_idx = 19,
1434         .ident_nums = 1,
1435         .mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,
1436         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO
1437         },
1438         { /* class_tid: 14, wh_plus, table: profile_tcam_cache_0 */
1439         .resource_func = BNXT_ULP_RESOURCE_FUNC_INVALID,
1440         .resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,
1441         .resource_sub_type =
1442                 BNXT_ULP_RESOURCE_SUB_TYPE_CACHE_TYPE_PROFILE_TCAM,
1443         .direction = TF_DIR_RX,
1444         .key_start_idx = 773,
1445         .blob_key_bit_size = 16,
1446         .key_bit_size = 16,
1447         .key_num_fields = 3,
1448         .result_start_idx = 621,
1449         .result_bit_size = 10,
1450         .result_num_fields = 1,
1451         .encap_num_fields = 0,
1452         .ident_start_idx = 20,
1453         .ident_nums = 1
1454         },
1455         { /* class_tid: 14, wh_plus, table: profile_tcam_0 */
1456         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
1457         .resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,
1458         .direction = TF_DIR_RX,
1459         .srch_b4_alloc = BNXT_ULP_SEARCH_BEFORE_ALLOC_NO,
1460         .priority = BNXT_ULP_PRIORITY_LEVEL_0,
1461         .key_start_idx = 776,
1462         .blob_key_bit_size = 81,
1463         .key_bit_size = 81,
1464         .key_num_fields = 43,
1465         .result_start_idx = 622,
1466         .result_bit_size = 38,
1467         .result_num_fields = 8,
1468         .encap_num_fields = 0,
1469         .ident_start_idx = 21,
1470         .ident_nums = 0,
1471         .mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,
1472         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO
1473         },
1474         { /* class_tid: 14, wh_plus, table: ext_em_0 */
1475         .resource_func = BNXT_ULP_RESOURCE_FUNC_EXT_EM_TABLE,
1476         .resource_type = TF_MEM_EXTERNAL,
1477         .mem_type_opcode = BNXT_ULP_MEM_TYPE_OPCODE_EXECUTE_IF_EXT,
1478         .direction = TF_DIR_RX,
1479         .key_start_idx = 819,
1480         .blob_key_bit_size = 448,
1481         .key_bit_size = 448,
1482         .key_num_fields = 11,
1483         .result_start_idx = 630,
1484         .result_bit_size = 64,
1485         .result_num_fields = 9,
1486         .encap_num_fields = 0,
1487         .ident_start_idx = 21,
1488         .ident_nums = 0,
1489         .mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_SET_IF_MARK_ACTION,
1490         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES
1491         },
1492         { /* class_tid: 14, wh_plus, table: int_em_0 */
1493         .resource_func = BNXT_ULP_RESOURCE_FUNC_INT_EM_TABLE,
1494         .resource_type = TF_MEM_INTERNAL,
1495         .mem_type_opcode = BNXT_ULP_MEM_TYPE_OPCODE_EXECUTE_IF_INT,
1496         .direction = TF_DIR_RX,
1497         .key_start_idx = 830,
1498         .blob_key_bit_size = 392,
1499         .key_bit_size = 392,
1500         .key_num_fields = 11,
1501         .result_start_idx = 639,
1502         .result_bit_size = 64,
1503         .result_num_fields = 9,
1504         .encap_num_fields = 0,
1505         .ident_start_idx = 21,
1506         .ident_nums = 0,
1507         .mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_SET_IF_MARK_ACTION,
1508         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES
1509         },
1510         { /* class_tid: 15, wh_plus, table: l2_cntxt_tcam_0 */
1511         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
1512         .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_HIGH,
1513         .direction = TF_DIR_RX,
1514         .srch_b4_alloc = BNXT_ULP_SEARCH_BEFORE_ALLOC_SEARCH_IF_HIT_SKIP,
1515         .priority = BNXT_ULP_PRIORITY_LEVEL_0,
1516         .key_start_idx = 841,
1517         .blob_key_bit_size = 167,
1518         .key_bit_size = 167,
1519         .key_num_fields = 13,
1520         .result_start_idx = 648,
1521         .result_bit_size = 64,
1522         .result_num_fields = 13,
1523         .encap_num_fields = 0,
1524         .ident_start_idx = 21,
1525         .ident_nums = 1,
1526         .mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,
1527         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO
1528         },
1529         { /* class_tid: 15, wh_plus, table: profile_tcam_cache_0 */
1530         .resource_func = BNXT_ULP_RESOURCE_FUNC_INVALID,
1531         .resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,
1532         .resource_sub_type =
1533                 BNXT_ULP_RESOURCE_SUB_TYPE_CACHE_TYPE_PROFILE_TCAM,
1534         .direction = TF_DIR_RX,
1535         .key_start_idx = 854,
1536         .blob_key_bit_size = 16,
1537         .key_bit_size = 16,
1538         .key_num_fields = 3,
1539         .result_start_idx = 661,
1540         .result_bit_size = 10,
1541         .result_num_fields = 1,
1542         .encap_num_fields = 0,
1543         .ident_start_idx = 22,
1544         .ident_nums = 1
1545         },
1546         { /* class_tid: 15, wh_plus, table: profile_tcam_0 */
1547         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
1548         .resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,
1549         .direction = TF_DIR_RX,
1550         .srch_b4_alloc = BNXT_ULP_SEARCH_BEFORE_ALLOC_NO,
1551         .priority = BNXT_ULP_PRIORITY_LEVEL_0,
1552         .key_start_idx = 857,
1553         .blob_key_bit_size = 81,
1554         .key_bit_size = 81,
1555         .key_num_fields = 43,
1556         .result_start_idx = 662,
1557         .result_bit_size = 38,
1558         .result_num_fields = 8,
1559         .encap_num_fields = 0,
1560         .ident_start_idx = 23,
1561         .ident_nums = 0,
1562         .mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,
1563         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO
1564         },
1565         { /* class_tid: 15, wh_plus, table: ext_em_0 */
1566         .resource_func = BNXT_ULP_RESOURCE_FUNC_EXT_EM_TABLE,
1567         .resource_type = TF_MEM_EXTERNAL,
1568         .mem_type_opcode = BNXT_ULP_MEM_TYPE_OPCODE_EXECUTE_IF_EXT,
1569         .direction = TF_DIR_RX,
1570         .key_start_idx = 900,
1571         .blob_key_bit_size = 448,
1572         .key_bit_size = 448,
1573         .key_num_fields = 11,
1574         .result_start_idx = 670,
1575         .result_bit_size = 64,
1576         .result_num_fields = 9,
1577         .encap_num_fields = 0,
1578         .ident_start_idx = 23,
1579         .ident_nums = 0,
1580         .mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_SET_IF_MARK_ACTION,
1581         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES
1582         },
1583         { /* class_tid: 15, wh_plus, table: int_em_0 */
1584         .resource_func = BNXT_ULP_RESOURCE_FUNC_INT_EM_TABLE,
1585         .resource_type = TF_MEM_INTERNAL,
1586         .mem_type_opcode = BNXT_ULP_MEM_TYPE_OPCODE_EXECUTE_IF_INT,
1587         .direction = TF_DIR_RX,
1588         .key_start_idx = 911,
1589         .blob_key_bit_size = 392,
1590         .key_bit_size = 392,
1591         .key_num_fields = 11,
1592         .result_start_idx = 679,
1593         .result_bit_size = 64,
1594         .result_num_fields = 9,
1595         .encap_num_fields = 0,
1596         .ident_start_idx = 23,
1597         .ident_nums = 0,
1598         .mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_SET_IF_MARK_ACTION,
1599         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES
1600         },
1601         { /* class_tid: 16, wh_plus, table: l2_cntxt_tcam_0 */
1602         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
1603         .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_HIGH,
1604         .direction = TF_DIR_RX,
1605         .srch_b4_alloc = BNXT_ULP_SEARCH_BEFORE_ALLOC_SEARCH_IF_HIT_SKIP,
1606         .priority = BNXT_ULP_PRIORITY_LEVEL_0,
1607         .key_start_idx = 922,
1608         .blob_key_bit_size = 167,
1609         .key_bit_size = 167,
1610         .key_num_fields = 13,
1611         .result_start_idx = 688,
1612         .result_bit_size = 64,
1613         .result_num_fields = 13,
1614         .encap_num_fields = 0,
1615         .ident_start_idx = 23,
1616         .ident_nums = 1,
1617         .mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,
1618         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO
1619         },
1620         { /* class_tid: 16, wh_plus, table: profile_tcam_cache_0 */
1621         .resource_func = BNXT_ULP_RESOURCE_FUNC_INVALID,
1622         .resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,
1623         .resource_sub_type =
1624                 BNXT_ULP_RESOURCE_SUB_TYPE_CACHE_TYPE_PROFILE_TCAM,
1625         .direction = TF_DIR_RX,
1626         .key_start_idx = 935,
1627         .blob_key_bit_size = 16,
1628         .key_bit_size = 16,
1629         .key_num_fields = 3,
1630         .result_start_idx = 701,
1631         .result_bit_size = 10,
1632         .result_num_fields = 1,
1633         .encap_num_fields = 0,
1634         .ident_start_idx = 24,
1635         .ident_nums = 1
1636         },
1637         { /* class_tid: 16, wh_plus, table: profile_tcam_0 */
1638         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
1639         .resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,
1640         .direction = TF_DIR_RX,
1641         .srch_b4_alloc = BNXT_ULP_SEARCH_BEFORE_ALLOC_NO,
1642         .priority = BNXT_ULP_PRIORITY_LEVEL_0,
1643         .key_start_idx = 938,
1644         .blob_key_bit_size = 81,
1645         .key_bit_size = 81,
1646         .key_num_fields = 43,
1647         .result_start_idx = 702,
1648         .result_bit_size = 38,
1649         .result_num_fields = 8,
1650         .encap_num_fields = 0,
1651         .ident_start_idx = 25,
1652         .ident_nums = 0,
1653         .mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,
1654         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO
1655         },
1656         { /* class_tid: 16, wh_plus, table: ext_em_0 */
1657         .resource_func = BNXT_ULP_RESOURCE_FUNC_EXT_EM_TABLE,
1658         .resource_type = TF_MEM_EXTERNAL,
1659         .mem_type_opcode = BNXT_ULP_MEM_TYPE_OPCODE_EXECUTE_IF_EXT,
1660         .direction = TF_DIR_RX,
1661         .key_start_idx = 981,
1662         .blob_key_bit_size = 448,
1663         .key_bit_size = 448,
1664         .key_num_fields = 11,
1665         .result_start_idx = 710,
1666         .result_bit_size = 64,
1667         .result_num_fields = 9,
1668         .encap_num_fields = 0,
1669         .ident_start_idx = 25,
1670         .ident_nums = 0,
1671         .mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_SET_IF_MARK_ACTION,
1672         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES
1673         },
1674         { /* class_tid: 16, wh_plus, table: int_em_0 */
1675         .resource_func = BNXT_ULP_RESOURCE_FUNC_INT_EM_TABLE,
1676         .resource_type = TF_MEM_INTERNAL,
1677         .mem_type_opcode = BNXT_ULP_MEM_TYPE_OPCODE_EXECUTE_IF_INT,
1678         .direction = TF_DIR_RX,
1679         .key_start_idx = 992,
1680         .blob_key_bit_size = 200,
1681         .key_bit_size = 200,
1682         .key_num_fields = 11,
1683         .result_start_idx = 719,
1684         .result_bit_size = 64,
1685         .result_num_fields = 9,
1686         .encap_num_fields = 0,
1687         .ident_start_idx = 25,
1688         .ident_nums = 0,
1689         .mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_SET_IF_MARK_ACTION,
1690         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES
1691         },
1692         { /* class_tid: 17, wh_plus, table: l2_cntxt_tcam_0 */
1693         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
1694         .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_HIGH,
1695         .direction = TF_DIR_RX,
1696         .srch_b4_alloc = BNXT_ULP_SEARCH_BEFORE_ALLOC_SEARCH_IF_HIT_SKIP,
1697         .priority = BNXT_ULP_PRIORITY_LEVEL_0,
1698         .key_start_idx = 1003,
1699         .blob_key_bit_size = 167,
1700         .key_bit_size = 167,
1701         .key_num_fields = 13,
1702         .result_start_idx = 728,
1703         .result_bit_size = 64,
1704         .result_num_fields = 13,
1705         .encap_num_fields = 0,
1706         .ident_start_idx = 25,
1707         .ident_nums = 1,
1708         .mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,
1709         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO
1710         },
1711         { /* class_tid: 17, wh_plus, table: profile_tcam_cache_0 */
1712         .resource_func = BNXT_ULP_RESOURCE_FUNC_INVALID,
1713         .resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,
1714         .resource_sub_type =
1715                 BNXT_ULP_RESOURCE_SUB_TYPE_CACHE_TYPE_PROFILE_TCAM,
1716         .direction = TF_DIR_RX,
1717         .key_start_idx = 1016,
1718         .blob_key_bit_size = 16,
1719         .key_bit_size = 16,
1720         .key_num_fields = 3,
1721         .result_start_idx = 741,
1722         .result_bit_size = 10,
1723         .result_num_fields = 1,
1724         .encap_num_fields = 0,
1725         .ident_start_idx = 26,
1726         .ident_nums = 1
1727         },
1728         { /* class_tid: 17, wh_plus, table: profile_tcam_0 */
1729         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
1730         .resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,
1731         .direction = TF_DIR_RX,
1732         .srch_b4_alloc = BNXT_ULP_SEARCH_BEFORE_ALLOC_NO,
1733         .priority = BNXT_ULP_PRIORITY_LEVEL_0,
1734         .key_start_idx = 1019,
1735         .blob_key_bit_size = 81,
1736         .key_bit_size = 81,
1737         .key_num_fields = 43,
1738         .result_start_idx = 742,
1739         .result_bit_size = 38,
1740         .result_num_fields = 8,
1741         .encap_num_fields = 0,
1742         .ident_start_idx = 27,
1743         .ident_nums = 0,
1744         .mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,
1745         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO
1746         },
1747         { /* class_tid: 17, wh_plus, table: ext_em_0 */
1748         .resource_func = BNXT_ULP_RESOURCE_FUNC_EXT_EM_TABLE,
1749         .resource_type = TF_MEM_EXTERNAL,
1750         .mem_type_opcode = BNXT_ULP_MEM_TYPE_OPCODE_EXECUTE_IF_EXT,
1751         .direction = TF_DIR_RX,
1752         .key_start_idx = 1062,
1753         .blob_key_bit_size = 448,
1754         .key_bit_size = 448,
1755         .key_num_fields = 11,
1756         .result_start_idx = 750,
1757         .result_bit_size = 64,
1758         .result_num_fields = 9,
1759         .encap_num_fields = 0,
1760         .ident_start_idx = 27,
1761         .ident_nums = 0,
1762         .mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_SET_IF_MARK_ACTION,
1763         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES
1764         },
1765         { /* class_tid: 17, wh_plus, table: int_em_0 */
1766         .resource_func = BNXT_ULP_RESOURCE_FUNC_INT_EM_TABLE,
1767         .resource_type = TF_MEM_INTERNAL,
1768         .mem_type_opcode = BNXT_ULP_MEM_TYPE_OPCODE_EXECUTE_IF_INT,
1769         .direction = TF_DIR_RX,
1770         .key_start_idx = 1073,
1771         .blob_key_bit_size = 392,
1772         .key_bit_size = 392,
1773         .key_num_fields = 11,
1774         .result_start_idx = 759,
1775         .result_bit_size = 64,
1776         .result_num_fields = 9,
1777         .encap_num_fields = 0,
1778         .ident_start_idx = 27,
1779         .ident_nums = 0,
1780         .mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_SET_IF_MARK_ACTION,
1781         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES
1782         },
1783         { /* class_tid: 18, wh_plus, table: int_flow_counter_tbl_0 */
1784         .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
1785         .resource_type = TF_TBL_TYPE_ACT_STATS_64,
1786         .resource_sub_type =
1787                 BNXT_ULP_RESOURCE_SUB_TYPE_INDEX_TYPE_INT_COUNT_ACC,
1788         .cond_opcode = BNXT_ULP_COND_OPC_ACTION_BIT_IS_SET,
1789         .cond_operand = BNXT_ULP_ACTION_BIT_COUNT,
1790         .direction = TF_DIR_RX,
1791         .srch_b4_alloc = BNXT_ULP_SEARCH_BEFORE_ALLOC_NO,
1792         .result_start_idx = 768,
1793         .result_bit_size = 64,
1794         .result_num_fields = 1,
1795         .encap_num_fields = 0,
1796         .mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,
1797         .index_opcode = BNXT_ULP_INDEX_OPCODE_ALLOCATE,
1798         .index_operand = BNXT_ULP_REGFILE_INDEX_FLOW_CNTR_PTR_0
1799         },
1800         { /* class_tid: 18, wh_plus, table: l2_cntxt_tcam_0 */
1801         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
1802         .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_HIGH,
1803         .direction = TF_DIR_RX,
1804         .srch_b4_alloc = BNXT_ULP_SEARCH_BEFORE_ALLOC_SEARCH_IF_HIT_SKIP,
1805         .priority = BNXT_ULP_PRIORITY_LEVEL_0,
1806         .key_start_idx = 1084,
1807         .blob_key_bit_size = 167,
1808         .key_bit_size = 167,
1809         .key_num_fields = 13,
1810         .result_start_idx = 769,
1811         .result_bit_size = 64,
1812         .result_num_fields = 13,
1813         .encap_num_fields = 0,
1814         .ident_start_idx = 27,
1815         .ident_nums = 1,
1816         .mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,
1817         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO
1818         },
1819         { /* class_tid: 18, wh_plus, table: profile_tcam_cache_0 */
1820         .resource_func = BNXT_ULP_RESOURCE_FUNC_INVALID,
1821         .resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,
1822         .resource_sub_type =
1823                 BNXT_ULP_RESOURCE_SUB_TYPE_CACHE_TYPE_PROFILE_TCAM,
1824         .direction = TF_DIR_RX,
1825         .key_start_idx = 1097,
1826         .blob_key_bit_size = 16,
1827         .key_bit_size = 16,
1828         .key_num_fields = 3,
1829         .result_start_idx = 782,
1830         .result_bit_size = 20,
1831         .result_num_fields = 2,
1832         .encap_num_fields = 0,
1833         .ident_start_idx = 28,
1834         .ident_nums = 2
1835         },
1836         { /* class_tid: 18, wh_plus, table: profile_tcam_0 */
1837         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
1838         .resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,
1839         .direction = TF_DIR_RX,
1840         .srch_b4_alloc = BNXT_ULP_SEARCH_BEFORE_ALLOC_NO,
1841         .priority = BNXT_ULP_PRIORITY_LEVEL_0,
1842         .key_start_idx = 1100,
1843         .blob_key_bit_size = 81,
1844         .key_bit_size = 81,
1845         .key_num_fields = 43,
1846         .result_start_idx = 784,
1847         .result_bit_size = 38,
1848         .result_num_fields = 8,
1849         .encap_num_fields = 0,
1850         .ident_start_idx = 30,
1851         .ident_nums = 0,
1852         .mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,
1853         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO
1854         },
1855         { /* class_tid: 18, wh_plus, table: wm_0 */
1856         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
1857         .resource_type = TF_TCAM_TBL_TYPE_WC_TCAM,
1858         .direction = TF_DIR_RX,
1859         .srch_b4_alloc = BNXT_ULP_SEARCH_BEFORE_ALLOC_NO,
1860         .priority = BNXT_ULP_PRIORITY_LEVEL_0,
1861         .key_start_idx = 1143,
1862         .blob_key_bit_size = 192,
1863         .key_bit_size = 160,
1864         .key_num_fields = 5,
1865         .result_start_idx = 792,
1866         .result_bit_size = 19,
1867         .result_num_fields = 3,
1868         .encap_num_fields = 0,
1869         .ident_start_idx = 30,
1870         .ident_nums = 0,
1871         .mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_SET_IF_MARK_ACTION,
1872         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES
1873         },
1874         { /* class_tid: 19, wh_plus, table: l2_cntxt_tcam_0 */
1875         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
1876         .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_HIGH,
1877         .direction = TF_DIR_RX,
1878         .srch_b4_alloc = BNXT_ULP_SEARCH_BEFORE_ALLOC_SEARCH_IF_HIT_SKIP,
1879         .priority = BNXT_ULP_PRIORITY_LEVEL_0,
1880         .key_start_idx = 1148,
1881         .blob_key_bit_size = 167,
1882         .key_bit_size = 167,
1883         .key_num_fields = 13,
1884         .result_start_idx = 795,
1885         .result_bit_size = 64,
1886         .result_num_fields = 13,
1887         .encap_num_fields = 0,
1888         .ident_start_idx = 30,
1889         .ident_nums = 1,
1890         .mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,
1891         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO
1892         },
1893         { /* class_tid: 19, wh_plus, table: profile_tcam_cache_0 */
1894         .resource_func = BNXT_ULP_RESOURCE_FUNC_INVALID,
1895         .resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,
1896         .resource_sub_type =
1897                 BNXT_ULP_RESOURCE_SUB_TYPE_CACHE_TYPE_PROFILE_TCAM,
1898         .direction = TF_DIR_RX,
1899         .key_start_idx = 1161,
1900         .blob_key_bit_size = 16,
1901         .key_bit_size = 16,
1902         .key_num_fields = 3,
1903         .result_start_idx = 808,
1904         .result_bit_size = 20,
1905         .result_num_fields = 2,
1906         .encap_num_fields = 0,
1907         .ident_start_idx = 31,
1908         .ident_nums = 2
1909         },
1910         { /* class_tid: 19, wh_plus, table: profile_tcam_0 */
1911         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
1912         .resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,
1913         .direction = TF_DIR_RX,
1914         .srch_b4_alloc = BNXT_ULP_SEARCH_BEFORE_ALLOC_NO,
1915         .priority = BNXT_ULP_PRIORITY_LEVEL_0,
1916         .key_start_idx = 1164,
1917         .blob_key_bit_size = 81,
1918         .key_bit_size = 81,
1919         .key_num_fields = 43,
1920         .result_start_idx = 810,
1921         .result_bit_size = 38,
1922         .result_num_fields = 8,
1923         .encap_num_fields = 0,
1924         .ident_start_idx = 33,
1925         .ident_nums = 0,
1926         .mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,
1927         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO
1928         },
1929         { /* class_tid: 19, wh_plus, table: int_em_0 */
1930         .resource_func = BNXT_ULP_RESOURCE_FUNC_INT_EM_TABLE,
1931         .resource_type = TF_MEM_INTERNAL,
1932         .mem_type_opcode = BNXT_ULP_MEM_TYPE_OPCODE_EXECUTE_IF_INT,
1933         .direction = TF_DIR_RX,
1934         .key_start_idx = 1207,
1935         .blob_key_bit_size = 112,
1936         .key_bit_size = 112,
1937         .key_num_fields = 8,
1938         .result_start_idx = 818,
1939         .result_bit_size = 64,
1940         .result_num_fields = 9,
1941         .encap_num_fields = 0,
1942         .ident_start_idx = 33,
1943         .ident_nums = 0,
1944         .mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,
1945         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES
1946         },
1947         { /* class_tid: 19, wh_plus, table: ext_em_0 */
1948         .resource_func = BNXT_ULP_RESOURCE_FUNC_EXT_EM_TABLE,
1949         .resource_type = TF_MEM_EXTERNAL,
1950         .mem_type_opcode = BNXT_ULP_MEM_TYPE_OPCODE_EXECUTE_IF_EXT,
1951         .direction = TF_DIR_RX,
1952         .key_start_idx = 1215,
1953         .blob_key_bit_size = 448,
1954         .key_bit_size = 448,
1955         .key_num_fields = 8,
1956         .result_start_idx = 827,
1957         .result_bit_size = 64,
1958         .result_num_fields = 9,
1959         .encap_num_fields = 0,
1960         .ident_start_idx = 33,
1961         .ident_nums = 0,
1962         .mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,
1963         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES
1964         },
1965         { /* class_tid: 20, wh_plus, table: l2_cntxt_cache_0 */
1966         .resource_func = BNXT_ULP_RESOURCE_FUNC_INVALID,
1967         .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_LOW,
1968         .resource_sub_type =
1969                 BNXT_ULP_RESOURCE_SUB_TYPE_CACHE_TYPE_L2_CNTXT_TCAM,
1970         .direction = TF_DIR_TX,
1971         .key_start_idx = 1223,
1972         .blob_key_bit_size = 8,
1973         .key_bit_size = 8,
1974         .key_num_fields = 1,
1975         .result_start_idx = 836,
1976         .result_bit_size = 10,
1977         .result_num_fields = 1,
1978         .encap_num_fields = 0,
1979         .ident_start_idx = 33,
1980         .ident_nums = 1
1981         },
1982         { /* class_tid: 20, wh_plus, table: l2_cntxt_tcam_0 */
1983         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
1984         .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_LOW,
1985         .direction = TF_DIR_TX,
1986         .srch_b4_alloc = BNXT_ULP_SEARCH_BEFORE_ALLOC_NO,
1987         .priority = BNXT_ULP_PRIORITY_LEVEL_0,
1988         .key_start_idx = 1224,
1989         .blob_key_bit_size = 167,
1990         .key_bit_size = 167,
1991         .key_num_fields = 13,
1992         .result_start_idx = 837,
1993         .result_bit_size = 64,
1994         .result_num_fields = 13,
1995         .encap_num_fields = 0,
1996         .ident_start_idx = 34,
1997         .ident_nums = 0,
1998         .mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,
1999         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO
2000         },
2001         { /* class_tid: 20, wh_plus, table: profile_tcam_cache_0 */
2002         .resource_func = BNXT_ULP_RESOURCE_FUNC_INVALID,
2003         .resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,
2004         .resource_sub_type =
2005                 BNXT_ULP_RESOURCE_SUB_TYPE_CACHE_TYPE_PROFILE_TCAM,
2006         .direction = TF_DIR_TX,
2007         .key_start_idx = 1237,
2008         .blob_key_bit_size = 16,
2009         .key_bit_size = 16,
2010         .key_num_fields = 3,
2011         .result_start_idx = 850,
2012         .result_bit_size = 10,
2013         .result_num_fields = 1,
2014         .encap_num_fields = 0,
2015         .ident_start_idx = 34,
2016         .ident_nums = 1
2017         },
2018         { /* class_tid: 20, wh_plus, table: profile_tcam_0 */
2019         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
2020         .resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,
2021         .direction = TF_DIR_TX,
2022         .srch_b4_alloc = BNXT_ULP_SEARCH_BEFORE_ALLOC_NO,
2023         .priority = BNXT_ULP_PRIORITY_LEVEL_0,
2024         .key_start_idx = 1240,
2025         .blob_key_bit_size = 81,
2026         .key_bit_size = 81,
2027         .key_num_fields = 43,
2028         .result_start_idx = 851,
2029         .result_bit_size = 38,
2030         .result_num_fields = 8,
2031         .encap_num_fields = 0,
2032         .ident_start_idx = 35,
2033         .ident_nums = 0,
2034         .mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,
2035         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO
2036         },
2037         { /* class_tid: 20, wh_plus, table: ext_em_0 */
2038         .resource_func = BNXT_ULP_RESOURCE_FUNC_EXT_EM_TABLE,
2039         .resource_type = TF_MEM_EXTERNAL,
2040         .mem_type_opcode = BNXT_ULP_MEM_TYPE_OPCODE_EXECUTE_IF_EXT,
2041         .direction = TF_DIR_TX,
2042         .key_start_idx = 1283,
2043         .blob_key_bit_size = 448,
2044         .key_bit_size = 448,
2045         .key_num_fields = 11,
2046         .result_start_idx = 859,
2047         .result_bit_size = 64,
2048         .result_num_fields = 9,
2049         .encap_num_fields = 0,
2050         .ident_start_idx = 35,
2051         .ident_nums = 0,
2052         .mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_SET_IF_MARK_ACTION,
2053         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES
2054         },
2055         { /* class_tid: 20, wh_plus, table: int_em_0 */
2056         .resource_func = BNXT_ULP_RESOURCE_FUNC_INT_EM_TABLE,
2057         .resource_type = TF_MEM_INTERNAL,
2058         .mem_type_opcode = BNXT_ULP_MEM_TYPE_OPCODE_EXECUTE_IF_INT,
2059         .direction = TF_DIR_TX,
2060         .key_start_idx = 1294,
2061         .blob_key_bit_size = 200,
2062         .key_bit_size = 200,
2063         .key_num_fields = 11,
2064         .result_start_idx = 868,
2065         .result_bit_size = 64,
2066         .result_num_fields = 9,
2067         .encap_num_fields = 0,
2068         .ident_start_idx = 35,
2069         .ident_nums = 0,
2070         .mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_SET_IF_MARK_ACTION,
2071         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES
2072         },
2073         { /* class_tid: 21, wh_plus, table: l2_cntxt_cache_0 */
2074         .resource_func = BNXT_ULP_RESOURCE_FUNC_INVALID,
2075         .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_LOW,
2076         .resource_sub_type =
2077                 BNXT_ULP_RESOURCE_SUB_TYPE_CACHE_TYPE_L2_CNTXT_TCAM,
2078         .direction = TF_DIR_TX,
2079         .key_start_idx = 1305,
2080         .blob_key_bit_size = 8,
2081         .key_bit_size = 8,
2082         .key_num_fields = 1,
2083         .result_start_idx = 877,
2084         .result_bit_size = 10,
2085         .result_num_fields = 1,
2086         .encap_num_fields = 0,
2087         .ident_start_idx = 35,
2088         .ident_nums = 1
2089         },
2090         { /* class_tid: 21, wh_plus, table: l2_cntxt_tcam_0 */
2091         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
2092         .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_LOW,
2093         .direction = TF_DIR_TX,
2094         .srch_b4_alloc = BNXT_ULP_SEARCH_BEFORE_ALLOC_NO,
2095         .priority = BNXT_ULP_PRIORITY_LEVEL_0,
2096         .key_start_idx = 1306,
2097         .blob_key_bit_size = 167,
2098         .key_bit_size = 167,
2099         .key_num_fields = 13,
2100         .result_start_idx = 878,
2101         .result_bit_size = 64,
2102         .result_num_fields = 13,
2103         .encap_num_fields = 0,
2104         .ident_start_idx = 36,
2105         .ident_nums = 0,
2106         .mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,
2107         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO
2108         },
2109         { /* class_tid: 21, wh_plus, table: profile_tcam_cache_0 */
2110         .resource_func = BNXT_ULP_RESOURCE_FUNC_INVALID,
2111         .resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,
2112         .resource_sub_type =
2113                 BNXT_ULP_RESOURCE_SUB_TYPE_CACHE_TYPE_PROFILE_TCAM,
2114         .direction = TF_DIR_TX,
2115         .key_start_idx = 1319,
2116         .blob_key_bit_size = 16,
2117         .key_bit_size = 16,
2118         .key_num_fields = 3,
2119         .result_start_idx = 891,
2120         .result_bit_size = 10,
2121         .result_num_fields = 1,
2122         .encap_num_fields = 0,
2123         .ident_start_idx = 36,
2124         .ident_nums = 1
2125         },
2126         { /* class_tid: 21, wh_plus, table: profile_tcam_0 */
2127         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
2128         .resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,
2129         .direction = TF_DIR_TX,
2130         .srch_b4_alloc = BNXT_ULP_SEARCH_BEFORE_ALLOC_NO,
2131         .priority = BNXT_ULP_PRIORITY_LEVEL_0,
2132         .key_start_idx = 1322,
2133         .blob_key_bit_size = 81,
2134         .key_bit_size = 81,
2135         .key_num_fields = 43,
2136         .result_start_idx = 892,
2137         .result_bit_size = 38,
2138         .result_num_fields = 8,
2139         .encap_num_fields = 0,
2140         .ident_start_idx = 37,
2141         .ident_nums = 0,
2142         .mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,
2143         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO
2144         },
2145         { /* class_tid: 21, wh_plus, table: ext_em_0 */
2146         .resource_func = BNXT_ULP_RESOURCE_FUNC_EXT_EM_TABLE,
2147         .resource_type = TF_MEM_EXTERNAL,
2148         .mem_type_opcode = BNXT_ULP_MEM_TYPE_OPCODE_EXECUTE_IF_EXT,
2149         .direction = TF_DIR_TX,
2150         .key_start_idx = 1365,
2151         .blob_key_bit_size = 448,
2152         .key_bit_size = 448,
2153         .key_num_fields = 11,
2154         .result_start_idx = 900,
2155         .result_bit_size = 64,
2156         .result_num_fields = 9,
2157         .encap_num_fields = 0,
2158         .ident_start_idx = 37,
2159         .ident_nums = 0,
2160         .mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_SET_IF_MARK_ACTION,
2161         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES
2162         },
2163         { /* class_tid: 21, wh_plus, table: int_em_0 */
2164         .resource_func = BNXT_ULP_RESOURCE_FUNC_INT_EM_TABLE,
2165         .resource_type = TF_MEM_INTERNAL,
2166         .mem_type_opcode = BNXT_ULP_MEM_TYPE_OPCODE_EXECUTE_IF_INT,
2167         .direction = TF_DIR_TX,
2168         .key_start_idx = 1376,
2169         .blob_key_bit_size = 200,
2170         .key_bit_size = 200,
2171         .key_num_fields = 11,
2172         .result_start_idx = 909,
2173         .result_bit_size = 64,
2174         .result_num_fields = 9,
2175         .encap_num_fields = 0,
2176         .ident_start_idx = 37,
2177         .ident_nums = 0,
2178         .mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_SET_IF_MARK_ACTION,
2179         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES
2180         },
2181         { /* class_tid: 22, wh_plus, table: l2_cntxt_cache_0 */
2182         .resource_func = BNXT_ULP_RESOURCE_FUNC_INVALID,
2183         .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_LOW,
2184         .resource_sub_type =
2185                 BNXT_ULP_RESOURCE_SUB_TYPE_CACHE_TYPE_L2_CNTXT_TCAM,
2186         .direction = TF_DIR_TX,
2187         .key_start_idx = 1387,
2188         .blob_key_bit_size = 8,
2189         .key_bit_size = 8,
2190         .key_num_fields = 1,
2191         .result_start_idx = 918,
2192         .result_bit_size = 10,
2193         .result_num_fields = 1,
2194         .encap_num_fields = 0,
2195         .ident_start_idx = 37,
2196         .ident_nums = 1
2197         },
2198         { /* class_tid: 22, wh_plus, table: l2_cntxt_0 */
2199         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
2200         .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_LOW,
2201         .direction = TF_DIR_TX,
2202         .srch_b4_alloc = BNXT_ULP_SEARCH_BEFORE_ALLOC_NO,
2203         .priority = BNXT_ULP_PRIORITY_LEVEL_0,
2204         .key_start_idx = 1388,
2205         .blob_key_bit_size = 167,
2206         .key_bit_size = 167,
2207         .key_num_fields = 13,
2208         .result_start_idx = 919,
2209         .result_bit_size = 64,
2210         .result_num_fields = 13,
2211         .encap_num_fields = 0,
2212         .ident_start_idx = 38,
2213         .ident_nums = 0,
2214         .mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,
2215         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO
2216         },
2217         { /* class_tid: 22, wh_plus, table: profile_tcam_cache_0 */
2218         .resource_func = BNXT_ULP_RESOURCE_FUNC_INVALID,
2219         .resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,
2220         .resource_sub_type =
2221                 BNXT_ULP_RESOURCE_SUB_TYPE_CACHE_TYPE_PROFILE_TCAM,
2222         .direction = TF_DIR_TX,
2223         .key_start_idx = 1401,
2224         .blob_key_bit_size = 16,
2225         .key_bit_size = 16,
2226         .key_num_fields = 3,
2227         .result_start_idx = 932,
2228         .result_bit_size = 10,
2229         .result_num_fields = 1,
2230         .encap_num_fields = 0,
2231         .ident_start_idx = 38,
2232         .ident_nums = 1
2233         },
2234         { /* class_tid: 22, wh_plus, table: profile_tcam_0 */
2235         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
2236         .resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,
2237         .direction = TF_DIR_TX,
2238         .srch_b4_alloc = BNXT_ULP_SEARCH_BEFORE_ALLOC_NO,
2239         .priority = BNXT_ULP_PRIORITY_LEVEL_0,
2240         .key_start_idx = 1404,
2241         .blob_key_bit_size = 81,
2242         .key_bit_size = 81,
2243         .key_num_fields = 43,
2244         .result_start_idx = 933,
2245         .result_bit_size = 38,
2246         .result_num_fields = 8,
2247         .encap_num_fields = 0,
2248         .ident_start_idx = 39,
2249         .ident_nums = 0,
2250         .mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,
2251         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO
2252         },
2253         { /* class_tid: 22, wh_plus, table: ext_em_0 */
2254         .resource_func = BNXT_ULP_RESOURCE_FUNC_EXT_EM_TABLE,
2255         .resource_type = TF_MEM_EXTERNAL,
2256         .mem_type_opcode = BNXT_ULP_MEM_TYPE_OPCODE_EXECUTE_IF_EXT,
2257         .direction = TF_DIR_TX,
2258         .key_start_idx = 1447,
2259         .blob_key_bit_size = 448,
2260         .key_bit_size = 448,
2261         .key_num_fields = 11,
2262         .result_start_idx = 941,
2263         .result_bit_size = 64,
2264         .result_num_fields = 9,
2265         .encap_num_fields = 0,
2266         .ident_start_idx = 39,
2267         .ident_nums = 0,
2268         .mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_SET_IF_MARK_ACTION,
2269         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES
2270         },
2271         { /* class_tid: 22, wh_plus, table: int_em_0 */
2272         .resource_func = BNXT_ULP_RESOURCE_FUNC_INT_EM_TABLE,
2273         .resource_type = TF_MEM_INTERNAL,
2274         .mem_type_opcode = BNXT_ULP_MEM_TYPE_OPCODE_EXECUTE_IF_INT,
2275         .direction = TF_DIR_TX,
2276         .key_start_idx = 1458,
2277         .blob_key_bit_size = 392,
2278         .key_bit_size = 392,
2279         .key_num_fields = 11,
2280         .result_start_idx = 950,
2281         .result_bit_size = 64,
2282         .result_num_fields = 9,
2283         .encap_num_fields = 0,
2284         .ident_start_idx = 39,
2285         .ident_nums = 0,
2286         .mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_SET_IF_MARK_ACTION,
2287         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES
2288         },
2289         { /* class_tid: 23, wh_plus, table: l2_cntxt_cache_0 */
2290         .resource_func = BNXT_ULP_RESOURCE_FUNC_INVALID,
2291         .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_LOW,
2292         .resource_sub_type =
2293                 BNXT_ULP_RESOURCE_SUB_TYPE_CACHE_TYPE_L2_CNTXT_TCAM,
2294         .direction = TF_DIR_TX,
2295         .key_start_idx = 1469,
2296         .blob_key_bit_size = 8,
2297         .key_bit_size = 8,
2298         .key_num_fields = 1,
2299         .result_start_idx = 959,
2300         .result_bit_size = 10,
2301         .result_num_fields = 1,
2302         .encap_num_fields = 0,
2303         .ident_start_idx = 39,
2304         .ident_nums = 1
2305         },
2306         { /* class_tid: 23, wh_plus, table: l2_cntxt_tcam_0 */
2307         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
2308         .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_LOW,
2309         .direction = TF_DIR_TX,
2310         .srch_b4_alloc = BNXT_ULP_SEARCH_BEFORE_ALLOC_NO,
2311         .priority = BNXT_ULP_PRIORITY_LEVEL_0,
2312         .key_start_idx = 1470,
2313         .blob_key_bit_size = 167,
2314         .key_bit_size = 167,
2315         .key_num_fields = 13,
2316         .result_start_idx = 960,
2317         .result_bit_size = 64,
2318         .result_num_fields = 13,
2319         .encap_num_fields = 0,
2320         .ident_start_idx = 40,
2321         .ident_nums = 0,
2322         .mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,
2323         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO
2324         },
2325         { /* class_tid: 23, wh_plus, table: profile_tcam_cache_0 */
2326         .resource_func = BNXT_ULP_RESOURCE_FUNC_INVALID,
2327         .resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,
2328         .resource_sub_type =
2329                 BNXT_ULP_RESOURCE_SUB_TYPE_CACHE_TYPE_PROFILE_TCAM,
2330         .direction = TF_DIR_TX,
2331         .key_start_idx = 1483,
2332         .blob_key_bit_size = 16,
2333         .key_bit_size = 16,
2334         .key_num_fields = 3,
2335         .result_start_idx = 973,
2336         .result_bit_size = 10,
2337         .result_num_fields = 1,
2338         .encap_num_fields = 0,
2339         .ident_start_idx = 40,
2340         .ident_nums = 1
2341         },
2342         { /* class_tid: 23, wh_plus, table: profile_tcam_0 */
2343         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
2344         .resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,
2345         .direction = TF_DIR_TX,
2346         .srch_b4_alloc = BNXT_ULP_SEARCH_BEFORE_ALLOC_NO,
2347         .priority = BNXT_ULP_PRIORITY_LEVEL_0,
2348         .key_start_idx = 1486,
2349         .blob_key_bit_size = 81,
2350         .key_bit_size = 81,
2351         .key_num_fields = 43,
2352         .result_start_idx = 974,
2353         .result_bit_size = 38,
2354         .result_num_fields = 8,
2355         .encap_num_fields = 0,
2356         .ident_start_idx = 41,
2357         .ident_nums = 0,
2358         .mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,
2359         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO
2360         },
2361         { /* class_tid: 23, wh_plus, table: ext_em_0 */
2362         .resource_func = BNXT_ULP_RESOURCE_FUNC_EXT_EM_TABLE,
2363         .resource_type = TF_MEM_EXTERNAL,
2364         .mem_type_opcode = BNXT_ULP_MEM_TYPE_OPCODE_EXECUTE_IF_EXT,
2365         .direction = TF_DIR_TX,
2366         .key_start_idx = 1529,
2367         .blob_key_bit_size = 448,
2368         .key_bit_size = 448,
2369         .key_num_fields = 11,
2370         .result_start_idx = 982,
2371         .result_bit_size = 64,
2372         .result_num_fields = 9,
2373         .encap_num_fields = 0,
2374         .ident_start_idx = 41,
2375         .ident_nums = 0,
2376         .mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_SET_IF_MARK_ACTION,
2377         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES
2378         },
2379         { /* class_tid: 23, wh_plus, table: int_em_0 */
2380         .resource_func = BNXT_ULP_RESOURCE_FUNC_INT_EM_TABLE,
2381         .resource_type = TF_MEM_INTERNAL,
2382         .mem_type_opcode = BNXT_ULP_MEM_TYPE_OPCODE_EXECUTE_IF_INT,
2383         .direction = TF_DIR_TX,
2384         .key_start_idx = 1540,
2385         .blob_key_bit_size = 392,
2386         .key_bit_size = 392,
2387         .key_num_fields = 11,
2388         .result_start_idx = 991,
2389         .result_bit_size = 64,
2390         .result_num_fields = 9,
2391         .encap_num_fields = 0,
2392         .ident_start_idx = 41,
2393         .ident_nums = 0,
2394         .mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_SET_IF_MARK_ACTION,
2395         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES
2396         },
2397         { /* class_tid: 24, wh_plus, table: l2_cntxt_tcam_0 */
2398         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
2399         .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_HIGH,
2400         .direction = TF_DIR_TX,
2401         .srch_b4_alloc = BNXT_ULP_SEARCH_BEFORE_ALLOC_SEARCH_IF_HIT_UPDATE,
2402         .priority = BNXT_ULP_PRIORITY_LEVEL_0,
2403         .key_start_idx = 1551,
2404         .blob_key_bit_size = 167,
2405         .key_bit_size = 167,
2406         .key_num_fields = 13,
2407         .result_start_idx = 1000,
2408         .result_bit_size = 64,
2409         .result_num_fields = 13,
2410         .encap_num_fields = 0,
2411         .ident_start_idx = 41,
2412         .ident_nums = 1,
2413         .mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,
2414         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO
2415         },
2416         { /* class_tid: 24, wh_plus, table: profile_tcam_cache_0 */
2417         .resource_func = BNXT_ULP_RESOURCE_FUNC_INVALID,
2418         .resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,
2419         .resource_sub_type =
2420                 BNXT_ULP_RESOURCE_SUB_TYPE_CACHE_TYPE_PROFILE_TCAM,
2421         .direction = TF_DIR_TX,
2422         .key_start_idx = 1564,
2423         .blob_key_bit_size = 16,
2424         .key_bit_size = 16,
2425         .key_num_fields = 3,
2426         .result_start_idx = 1013,
2427         .result_bit_size = 10,
2428         .result_num_fields = 1,
2429         .encap_num_fields = 0,
2430         .ident_start_idx = 42,
2431         .ident_nums = 1
2432         },
2433         { /* class_tid: 24, wh_plus, table: profile_tcam_0 */
2434         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
2435         .resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,
2436         .direction = TF_DIR_TX,
2437         .srch_b4_alloc = BNXT_ULP_SEARCH_BEFORE_ALLOC_NO,
2438         .priority = BNXT_ULP_PRIORITY_LEVEL_0,
2439         .key_start_idx = 1567,
2440         .blob_key_bit_size = 81,
2441         .key_bit_size = 81,
2442         .key_num_fields = 43,
2443         .result_start_idx = 1014,
2444         .result_bit_size = 38,
2445         .result_num_fields = 8,
2446         .encap_num_fields = 0,
2447         .ident_start_idx = 43,
2448         .ident_nums = 0,
2449         .mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,
2450         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO
2451         },
2452         { /* class_tid: 24, wh_plus, table: ext_em_0 */
2453         .resource_func = BNXT_ULP_RESOURCE_FUNC_EXT_EM_TABLE,
2454         .resource_type = TF_MEM_EXTERNAL,
2455         .mem_type_opcode = BNXT_ULP_MEM_TYPE_OPCODE_EXECUTE_IF_EXT,
2456         .direction = TF_DIR_TX,
2457         .key_start_idx = 1610,
2458         .blob_key_bit_size = 448,
2459         .key_bit_size = 448,
2460         .key_num_fields = 7,
2461         .result_start_idx = 1022,
2462         .result_bit_size = 64,
2463         .result_num_fields = 9,
2464         .encap_num_fields = 0,
2465         .ident_start_idx = 43,
2466         .ident_nums = 0,
2467         .mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,
2468         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES
2469         },
2470         { /* class_tid: 24, wh_plus, table: int_em_0 */
2471         .resource_func = BNXT_ULP_RESOURCE_FUNC_INT_EM_TABLE,
2472         .resource_type = TF_MEM_INTERNAL,
2473         .mem_type_opcode = BNXT_ULP_MEM_TYPE_OPCODE_EXECUTE_IF_INT,
2474         .direction = TF_DIR_TX,
2475         .key_start_idx = 1617,
2476         .blob_key_bit_size = 104,
2477         .key_bit_size = 104,
2478         .key_num_fields = 7,
2479         .result_start_idx = 1031,
2480         .result_bit_size = 64,
2481         .result_num_fields = 9,
2482         .encap_num_fields = 0,
2483         .ident_start_idx = 43,
2484         .ident_nums = 0,
2485         .mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,
2486         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES
2487         },
2488         { /* class_tid: 25, wh_plus, table: l2_cntxt_tcam_0 */
2489         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
2490         .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_HIGH,
2491         .direction = TF_DIR_TX,
2492         .srch_b4_alloc = BNXT_ULP_SEARCH_BEFORE_ALLOC_SEARCH_IF_HIT_UPDATE,
2493         .priority = BNXT_ULP_PRIORITY_LEVEL_0,
2494         .key_start_idx = 1624,
2495         .blob_key_bit_size = 167,
2496         .key_bit_size = 167,
2497         .key_num_fields = 13,
2498         .result_start_idx = 1040,
2499         .result_bit_size = 64,
2500         .result_num_fields = 13,
2501         .encap_num_fields = 0,
2502         .ident_start_idx = 43,
2503         .ident_nums = 1,
2504         .mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,
2505         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO
2506         },
2507         { /* class_tid: 25, wh_plus, table: profile_tcam_cache_0 */
2508         .resource_func = BNXT_ULP_RESOURCE_FUNC_INVALID,
2509         .resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,
2510         .resource_sub_type =
2511                 BNXT_ULP_RESOURCE_SUB_TYPE_CACHE_TYPE_PROFILE_TCAM,
2512         .direction = TF_DIR_TX,
2513         .key_start_idx = 1637,
2514         .blob_key_bit_size = 16,
2515         .key_bit_size = 16,
2516         .key_num_fields = 3,
2517         .result_start_idx = 1053,
2518         .result_bit_size = 10,
2519         .result_num_fields = 1,
2520         .encap_num_fields = 0,
2521         .ident_start_idx = 44,
2522         .ident_nums = 1
2523         },
2524         { /* class_tid: 25, wh_plus, table: profile_tcam_0 */
2525         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
2526         .resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,
2527         .direction = TF_DIR_TX,
2528         .srch_b4_alloc = BNXT_ULP_SEARCH_BEFORE_ALLOC_NO,
2529         .priority = BNXT_ULP_PRIORITY_LEVEL_0,
2530         .key_start_idx = 1640,
2531         .blob_key_bit_size = 81,
2532         .key_bit_size = 81,
2533         .key_num_fields = 43,
2534         .result_start_idx = 1054,
2535         .result_bit_size = 38,
2536         .result_num_fields = 8,
2537         .encap_num_fields = 0,
2538         .ident_start_idx = 45,
2539         .ident_nums = 0,
2540         .mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,
2541         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO
2542         },
2543         { /* class_tid: 25, wh_plus, table: ext_em_0 */
2544         .resource_func = BNXT_ULP_RESOURCE_FUNC_EXT_EM_TABLE,
2545         .resource_type = TF_MEM_EXTERNAL,
2546         .mem_type_opcode = BNXT_ULP_MEM_TYPE_OPCODE_EXECUTE_IF_EXT,
2547         .direction = TF_DIR_TX,
2548         .key_start_idx = 1683,
2549         .blob_key_bit_size = 448,
2550         .key_bit_size = 448,
2551         .key_num_fields = 7,
2552         .result_start_idx = 1062,
2553         .result_bit_size = 64,
2554         .result_num_fields = 9,
2555         .encap_num_fields = 0,
2556         .ident_start_idx = 45,
2557         .ident_nums = 0,
2558         .mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,
2559         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES
2560         },
2561         { /* class_tid: 25, wh_plus, table: int_em_0 */
2562         .resource_func = BNXT_ULP_RESOURCE_FUNC_INT_EM_TABLE,
2563         .resource_type = TF_MEM_INTERNAL,
2564         .mem_type_opcode = BNXT_ULP_MEM_TYPE_OPCODE_EXECUTE_IF_INT,
2565         .direction = TF_DIR_TX,
2566         .key_start_idx = 1690,
2567         .blob_key_bit_size = 104,
2568         .key_bit_size = 104,
2569         .key_num_fields = 7,
2570         .result_start_idx = 1071,
2571         .result_bit_size = 64,
2572         .result_num_fields = 9,
2573         .encap_num_fields = 0,
2574         .ident_start_idx = 45,
2575         .ident_nums = 0,
2576         .mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,
2577         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES
2578         }
2579 };
2580
2581 struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {
2582         /* class_tid: 1, wh_plus, table: l2_cntxt_cache_0 */
2583         {
2584         .description = "svif",
2585         .field_bit_size = 8,
2586         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2587         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,
2588         .spec_operand = {
2589                 (BNXT_ULP_CF_IDX_PHY_PORT_SVIF >> 8) & 0xff,
2590                 BNXT_ULP_CF_IDX_PHY_PORT_SVIF & 0xff,
2591                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
2592                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
2593         },
2594         /* class_tid: 1, wh_plus, table: l2_cntxt_tcam_0 */
2595         {
2596         .description = "l2_ivlan_vid",
2597         .field_bit_size = 12,
2598         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2599         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2600         },
2601         {
2602         .description = "l2_ovlan_vid",
2603         .field_bit_size = 12,
2604         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2605         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2606         },
2607         {
2608         .description = "mac0_l2_dst",
2609         .field_bit_size = 48,
2610         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2611         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2612         },
2613         {
2614         .description = "svif",
2615         .field_bit_size = 8,
2616         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
2617         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
2618                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
2619         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,
2620         .spec_operand = {
2621                 (BNXT_ULP_CF_IDX_PHY_PORT_SVIF >> 8) & 0xff,
2622                 BNXT_ULP_CF_IDX_PHY_PORT_SVIF & 0xff,
2623                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
2624                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
2625         },
2626         {
2627         .description = "sparif",
2628         .field_bit_size = 4,
2629         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2630         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2631         },
2632         {
2633         .description = "tl2_ivlan_vid",
2634         .field_bit_size = 12,
2635         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2636         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2637         },
2638         {
2639         .description = "tl2_ovlan_vid",
2640         .field_bit_size = 12,
2641         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2642         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2643         },
2644         {
2645         .description = "mac1_tl2_dst",
2646         .field_bit_size = 48,
2647         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2648         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2649         },
2650         {
2651         .description = "l2_num_vtags",
2652         .field_bit_size = 2,
2653         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2654         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2655         },
2656         {
2657         .description = "tl2_num_vtags",
2658         .field_bit_size = 2,
2659         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2660         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2661         },
2662         {
2663         .description = "tun_hdr_type",
2664         .field_bit_size = 4,
2665         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2666         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2667         },
2668         {
2669         .description = "key_type",
2670         .field_bit_size = 2,
2671         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2672         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2673         },
2674         {
2675         .description = "valid",
2676         .field_bit_size = 1,
2677         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
2678         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
2679                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
2680         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
2681         .spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
2682                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
2683         },
2684         /* class_tid: 2, wh_plus, table: l2_cntxt_tcam_vfr_0 */
2685         {
2686         .description = "l2_ivlan_vid",
2687         .field_bit_size = 12,
2688         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2689         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2690         },
2691         {
2692         .description = "l2_ovlan_vid",
2693         .field_bit_size = 12,
2694         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2695         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2696         },
2697         {
2698         .description = "mac0_l2_addr",
2699         .field_bit_size = 48,
2700         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2701         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2702         },
2703         {
2704         .description = "svif",
2705         .field_bit_size = 8,
2706         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
2707         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
2708                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
2709         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,
2710         .spec_operand = {
2711                 (BNXT_ULP_CF_IDX_DRV_FUNC_SVIF >> 8) & 0xff,
2712                 BNXT_ULP_CF_IDX_DRV_FUNC_SVIF & 0xff,
2713                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
2714                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
2715         },
2716         {
2717         .description = "sparif",
2718         .field_bit_size = 4,
2719         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2720         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2721         },
2722         {
2723         .description = "tl2_ivlan_vid",
2724         .field_bit_size = 12,
2725         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2726         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2727         },
2728         {
2729         .description = "tl2_ovlan_vid",
2730         .field_bit_size = 12,
2731         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2732         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2733         },
2734         {
2735         .description = "mac1_tl2_addr",
2736         .field_bit_size = 48,
2737         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2738         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2739         },
2740         {
2741         .description = "l2_num_vtags",
2742         .field_bit_size = 2,
2743         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2744         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2745         },
2746         {
2747         .description = "tl2_num_vtags",
2748         .field_bit_size = 2,
2749         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2750         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2751         },
2752         {
2753         .description = "tun_hdr_type",
2754         .field_bit_size = 4,
2755         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2756         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2757         },
2758         {
2759         .description = "key_type",
2760         .field_bit_size = 2,
2761         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2762         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2763         },
2764         {
2765         .description = "valid",
2766         .field_bit_size = 1,
2767         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
2768         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
2769                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
2770         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
2771         .spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
2772                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
2773         },
2774         /* class_tid: 2, wh_plus, table: l2_cntxt_cache_0 */
2775         {
2776         .description = "svif",
2777         .field_bit_size = 8,
2778         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2779         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,
2780         .spec_operand = {
2781                 (BNXT_ULP_CF_IDX_DRV_FUNC_SVIF >> 8) & 0xff,
2782                 BNXT_ULP_CF_IDX_DRV_FUNC_SVIF & 0xff,
2783                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
2784                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
2785         },
2786         /* class_tid: 2, wh_plus, table: l2_cntxt_tcam_0 */
2787         {
2788         .description = "l2_ivlan_vid",
2789         .field_bit_size = 12,
2790         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2791         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2792         },
2793         {
2794         .description = "l2_ovlan_vid",
2795         .field_bit_size = 12,
2796         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2797         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2798         },
2799         {
2800         .description = "mac0_l2_addr",
2801         .field_bit_size = 48,
2802         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2803         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2804         },
2805         {
2806         .description = "svif",
2807         .field_bit_size = 8,
2808         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
2809         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
2810                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
2811         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,
2812         .spec_operand = {
2813                 (BNXT_ULP_CF_IDX_DRV_FUNC_SVIF >> 8) & 0xff,
2814                 BNXT_ULP_CF_IDX_DRV_FUNC_SVIF & 0xff,
2815                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
2816                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
2817         },
2818         {
2819         .description = "sparif",
2820         .field_bit_size = 4,
2821         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2822         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2823         },
2824         {
2825         .description = "tl2_ivlan_vid",
2826         .field_bit_size = 12,
2827         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2828         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2829         },
2830         {
2831         .description = "tl2_ovlan_vid",
2832         .field_bit_size = 12,
2833         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2834         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2835         },
2836         {
2837         .description = "mac1_tl2_addr",
2838         .field_bit_size = 48,
2839         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2840         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2841         },
2842         {
2843         .description = "l2_num_vtags",
2844         .field_bit_size = 2,
2845         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2846         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2847         },
2848         {
2849         .description = "tl2_num_vtags",
2850         .field_bit_size = 2,
2851         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2852         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2853         },
2854         {
2855         .description = "tun_hdr_type",
2856         .field_bit_size = 4,
2857         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2858         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2859         },
2860         {
2861         .description = "key_type",
2862         .field_bit_size = 2,
2863         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2864         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2865         },
2866         {
2867         .description = "valid",
2868         .field_bit_size = 1,
2869         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
2870         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
2871                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
2872         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
2873         .spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
2874                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
2875         },
2876         /* class_tid: 3, wh_plus, table: egr_l2_cntxt_cache_0 */
2877         {
2878         .description = "svif",
2879         .field_bit_size = 8,
2880         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2881         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,
2882         .spec_operand = {
2883                 (BNXT_ULP_CF_IDX_DRV_FUNC_SVIF >> 8) & 0xff,
2884                 BNXT_ULP_CF_IDX_DRV_FUNC_SVIF & 0xff,
2885                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
2886                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
2887         },
2888         /* class_tid: 3, wh_plus, table: egr_l2_cntxt_tcam_0 */
2889         {
2890         .description = "l2_ivlan_vid",
2891         .field_bit_size = 12,
2892         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2893         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2894         },
2895         {
2896         .description = "l2_ovlan_vid",
2897         .field_bit_size = 12,
2898         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2899         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2900         },
2901         {
2902         .description = "mac0_l2_dst",
2903         .field_bit_size = 48,
2904         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2905         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2906         },
2907         {
2908         .description = "svif",
2909         .field_bit_size = 8,
2910         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
2911         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
2912                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
2913         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,
2914         .spec_operand = {
2915                 (BNXT_ULP_CF_IDX_DRV_FUNC_SVIF >> 8) & 0xff,
2916                 BNXT_ULP_CF_IDX_DRV_FUNC_SVIF & 0xff,
2917                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
2918                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
2919         },
2920         {
2921         .description = "sparif",
2922         .field_bit_size = 4,
2923         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2924         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2925         },
2926         {
2927         .description = "tl2_ivlan_vid",
2928         .field_bit_size = 12,
2929         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2930         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2931         },
2932         {
2933         .description = "tl2_ovlan_vid",
2934         .field_bit_size = 12,
2935         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2936         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2937         },
2938         {
2939         .description = "mac1_tl2_dst",
2940         .field_bit_size = 48,
2941         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2942         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2943         },
2944         {
2945         .description = "l2_num_vtags",
2946         .field_bit_size = 2,
2947         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2948         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2949         },
2950         {
2951         .description = "tl2_num_vtags",
2952         .field_bit_size = 2,
2953         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2954         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2955         },
2956         {
2957         .description = "tun_hdr_type",
2958         .field_bit_size = 4,
2959         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2960         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2961         },
2962         {
2963         .description = "key_type",
2964         .field_bit_size = 2,
2965         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2966         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2967         },
2968         {
2969         .description = "valid",
2970         .field_bit_size = 1,
2971         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
2972         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
2973                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
2974         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
2975         .spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
2976                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
2977         },
2978         /* class_tid: 3, wh_plus, table: ing_l2_cntxt_dtagged_0 */
2979         {
2980         .description = "l2_ivlan_vid",
2981         .field_bit_size = 12,
2982         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2983         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2984         },
2985         {
2986         .description = "l2_ovlan_vid",
2987         .field_bit_size = 12,
2988         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
2989         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
2990                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
2991         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,
2992         .spec_operand = {
2993                 (BNXT_ULP_CF_IDX_DEV_PORT_ID >> 8) & 0xff,
2994                 BNXT_ULP_CF_IDX_DEV_PORT_ID & 0xff,
2995                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
2996                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
2997         },
2998         {
2999         .description = "mac0_l2_dst",
3000         .field_bit_size = 48,
3001         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3002         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3003         },
3004         {
3005         .description = "svif",
3006         .field_bit_size = 8,
3007         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
3008         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
3009                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
3010         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,
3011         .spec_operand = {
3012                 (BNXT_ULP_CF_IDX_DRV_FUNC_SVIF >> 8) & 0xff,
3013                 BNXT_ULP_CF_IDX_DRV_FUNC_SVIF & 0xff,
3014                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
3015                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
3016         },
3017         {
3018         .description = "sparif",
3019         .field_bit_size = 4,
3020         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3021         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3022         },
3023         {
3024         .description = "tl2_ivlan_vid",
3025         .field_bit_size = 12,
3026         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3027         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3028         },
3029         {
3030         .description = "tl2_ovlan_vid",
3031         .field_bit_size = 12,
3032         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3033         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3034         },
3035         {
3036         .description = "mac1_tl2_dst",
3037         .field_bit_size = 48,
3038         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3039         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3040         },
3041         {
3042         .description = "l2_num_vtags",
3043         .field_bit_size = 2,
3044         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
3045         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
3046                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
3047         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
3048         .spec_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,
3049                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
3050         },
3051         {
3052         .description = "tl2_num_vtags",
3053         .field_bit_size = 2,
3054         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3055         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3056         },
3057         {
3058         .description = "tun_hdr_type",
3059         .field_bit_size = 4,
3060         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
3061         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
3062                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
3063         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
3064         .spec_operand = {
3065                 BNXT_ULP_SYM_TUN_HDR_TYPE_NONE,
3066                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
3067                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
3068         },
3069         {
3070         .description = "key_type",
3071         .field_bit_size = 2,
3072         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3073         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3074         },
3075         {
3076         .description = "valid",
3077         .field_bit_size = 1,
3078         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
3079         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
3080                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
3081         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
3082         .spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
3083                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
3084         },
3085         /* class_tid: 3, wh_plus, table: ing_l2_cntxt_stagged_0 */
3086         {
3087         .description = "l2_ivlan_vid",
3088         .field_bit_size = 12,
3089         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
3090         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
3091                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
3092         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,
3093         .spec_operand = {
3094                 (BNXT_ULP_CF_IDX_DEV_PORT_ID >> 8) & 0xff,
3095                 BNXT_ULP_CF_IDX_DEV_PORT_ID & 0xff,
3096                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
3097                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
3098         },
3099         {
3100         .description = "l2_ovlan_vid",
3101         .field_bit_size = 12,
3102         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3103         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3104         },
3105         {
3106         .description = "mac0_l2_dst",
3107         .field_bit_size = 48,
3108         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3109         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3110         },
3111         {
3112         .description = "svif",
3113         .field_bit_size = 8,
3114         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
3115         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
3116                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
3117         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,
3118         .spec_operand = {
3119                 (BNXT_ULP_CF_IDX_DRV_FUNC_SVIF >> 8) & 0xff,
3120                 BNXT_ULP_CF_IDX_DRV_FUNC_SVIF & 0xff,
3121                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
3122                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
3123         },
3124         {
3125         .description = "sparif",
3126         .field_bit_size = 4,
3127         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3128         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3129         },
3130         {
3131         .description = "tl2_ivlan_vid",
3132         .field_bit_size = 12,
3133         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3134         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3135         },
3136         {
3137         .description = "tl2_ovlan_vid",
3138         .field_bit_size = 12,
3139         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3140         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3141         },
3142         {
3143         .description = "mac1_tl2_dst",
3144         .field_bit_size = 48,
3145         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3146         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3147         },
3148         {
3149         .description = "l2_num_vtags",
3150         .field_bit_size = 2,
3151         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
3152         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
3153                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
3154         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
3155         .spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
3156                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
3157         },
3158         {
3159         .description = "tl2_num_vtags",
3160         .field_bit_size = 2,
3161         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3162         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3163         },
3164         {
3165         .description = "tun_hdr_type",
3166         .field_bit_size = 4,
3167         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
3168         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
3169                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
3170         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
3171         .spec_operand = {
3172                 BNXT_ULP_SYM_TUN_HDR_TYPE_NONE,
3173                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
3174                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
3175         },
3176         {
3177         .description = "key_type",
3178         .field_bit_size = 2,
3179         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3180         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3181         },
3182         {
3183         .description = "valid",
3184         .field_bit_size = 1,
3185         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
3186         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
3187                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
3188         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
3189         .spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
3190                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
3191         },
3192         /* class_tid: 4, wh_plus, table: egr_l2_cntxt_cache_0 */
3193         {
3194         .description = "svif",
3195         .field_bit_size = 8,
3196         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3197         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,
3198         .spec_operand = {
3199                 (BNXT_ULP_CF_IDX_VF_FUNC_SVIF >> 8) & 0xff,
3200                 BNXT_ULP_CF_IDX_VF_FUNC_SVIF & 0xff,
3201                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
3202                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
3203         },
3204         /* class_tid: 4, wh_plus, table: egr_l2_cntxt_tcam_0 */
3205         {
3206         .description = "l2_ivlan_vid",
3207         .field_bit_size = 12,
3208         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3209         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3210         },
3211         {
3212         .description = "l2_ovlan_vid",
3213         .field_bit_size = 12,
3214         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3215         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3216         },
3217         {
3218         .description = "mac0_l2_dst",
3219         .field_bit_size = 48,
3220         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3221         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3222         },
3223         {
3224         .description = "svif",
3225         .field_bit_size = 8,
3226         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
3227         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
3228                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
3229         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,
3230         .spec_operand = {
3231                 (BNXT_ULP_CF_IDX_VF_FUNC_SVIF >> 8) & 0xff,
3232                 BNXT_ULP_CF_IDX_VF_FUNC_SVIF & 0xff,
3233                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
3234                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
3235         },
3236         {
3237         .description = "sparif",
3238         .field_bit_size = 4,
3239         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3240         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3241         },
3242         {
3243         .description = "tl2_ivlan_vid",
3244         .field_bit_size = 12,
3245         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3246         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3247         },
3248         {
3249         .description = "tl2_ovlan_vid",
3250         .field_bit_size = 12,
3251         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3252         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3253         },
3254         {
3255         .description = "mac1_tl2_dst",
3256         .field_bit_size = 48,
3257         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3258         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3259         },
3260         {
3261         .description = "l2_num_vtags",
3262         .field_bit_size = 2,
3263         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3264         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3265         },
3266         {
3267         .description = "tl2_num_vtags",
3268         .field_bit_size = 2,
3269         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3270         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3271         },
3272         {
3273         .description = "tun_hdr_type",
3274         .field_bit_size = 4,
3275         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3276         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3277         },
3278         {
3279         .description = "key_type",
3280         .field_bit_size = 2,
3281         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3282         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3283         },
3284         {
3285         .description = "valid",
3286         .field_bit_size = 1,
3287         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
3288         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
3289                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
3290         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
3291         .spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
3292                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
3293         },
3294         /* class_tid: 4, wh_plus, table: ing_l2_cntxt_tcam_0 */
3295         {
3296         .description = "l2_ivlan_vid",
3297         .field_bit_size = 12,
3298         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3299         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3300         },
3301         {
3302         .description = "l2_ovlan_vid",
3303         .field_bit_size = 12,
3304         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3305         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3306         },
3307         {
3308         .description = "mac0_l2_dst",
3309         .field_bit_size = 48,
3310         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3311         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3312         },
3313         {
3314         .description = "svif",
3315         .field_bit_size = 8,
3316         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
3317         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
3318                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
3319         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,
3320         .spec_operand = {
3321                 (BNXT_ULP_CF_IDX_VF_FUNC_SVIF >> 8) & 0xff,
3322                 BNXT_ULP_CF_IDX_VF_FUNC_SVIF & 0xff,
3323                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
3324                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
3325         },
3326         {
3327         .description = "sparif",
3328         .field_bit_size = 4,
3329         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3330         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3331         },
3332         {
3333         .description = "tl2_ivlan_vid",
3334         .field_bit_size = 12,
3335         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3336         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3337         },
3338         {
3339         .description = "tl2_ovlan_vid",
3340         .field_bit_size = 12,
3341         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3342         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3343         },
3344         {
3345         .description = "mac1_tl2_dst",
3346         .field_bit_size = 48,
3347         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3348         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3349         },
3350         {
3351         .description = "l2_num_vtags",
3352         .field_bit_size = 2,
3353         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3354         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3355         },
3356         {
3357         .description = "tl2_num_vtags",
3358         .field_bit_size = 2,
3359         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3360         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3361         },
3362         {
3363         .description = "tun_hdr_type",
3364         .field_bit_size = 4,
3365         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3366         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3367         },
3368         {
3369         .description = "key_type",
3370         .field_bit_size = 2,
3371         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3372         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3373         },
3374         {
3375         .description = "valid",
3376         .field_bit_size = 1,
3377         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
3378         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
3379                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
3380         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
3381         .spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
3382                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
3383         },
3384         /* class_tid: 6, wh_plus, table: l2_cntxt_tcam_0 */
3385         {
3386         .description = "l2_ivlan_vid",
3387         .field_bit_size = 12,
3388         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
3389         .mask_operand = {
3390                 (BNXT_ULP_HF6_IDX_OO_VLAN_VID >> 8) & 0xff,
3391                 BNXT_ULP_HF6_IDX_OO_VLAN_VID & 0xff,
3392                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
3393                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
3394         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
3395         .spec_operand = {
3396                 (BNXT_ULP_HF6_IDX_OO_VLAN_VID >> 8) & 0xff,
3397                 BNXT_ULP_HF6_IDX_OO_VLAN_VID & 0xff,
3398                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
3399                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
3400         },
3401         {
3402         .description = "l2_ovlan_vid",
3403         .field_bit_size = 12,
3404         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3405         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3406         },
3407         {
3408         .description = "mac0_l2_addr",
3409         .field_bit_size = 48,
3410         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
3411         .mask_operand = {
3412                 (BNXT_ULP_HF6_IDX_O_ETH_DMAC >> 8) & 0xff,
3413                 BNXT_ULP_HF6_IDX_O_ETH_DMAC & 0xff,
3414                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
3415                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
3416         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
3417         .spec_operand = {
3418                 (BNXT_ULP_HF6_IDX_O_ETH_DMAC >> 8) & 0xff,
3419                 BNXT_ULP_HF6_IDX_O_ETH_DMAC & 0xff,
3420                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
3421                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
3422         },
3423         {
3424         .description = "svif",
3425         .field_bit_size = 8,
3426         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
3427         .mask_operand = {
3428                 (BNXT_ULP_HF6_IDX_SVIF_INDEX >> 8) & 0xff,
3429                 BNXT_ULP_HF6_IDX_SVIF_INDEX & 0xff,
3430                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
3431                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
3432         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
3433         .spec_operand = {
3434                 (BNXT_ULP_HF6_IDX_SVIF_INDEX >> 8) & 0xff,
3435                 BNXT_ULP_HF6_IDX_SVIF_INDEX & 0xff,
3436                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
3437                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
3438         },
3439         {
3440         .description = "sparif",
3441         .field_bit_size = 4,
3442         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3443         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3444         },
3445         {
3446         .description = "tl2_ivlan_vid",
3447         .field_bit_size = 12,
3448         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3449         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3450         },
3451         {
3452         .description = "tl2_ovlan_vid",
3453         .field_bit_size = 12,
3454         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3455         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3456         },
3457         {
3458         .description = "mac1_tl2_addr",
3459         .field_bit_size = 48,
3460         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3461         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3462         },
3463         {
3464         .description = "l2_num_vtags",
3465         .field_bit_size = 2,
3466         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
3467         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
3468                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
3469         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,
3470         .spec_operand = {
3471                 (BNXT_ULP_CF_IDX_O_VTAG_NUM >> 8) & 0xff,
3472                 BNXT_ULP_CF_IDX_O_VTAG_NUM & 0xff,
3473                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
3474                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
3475         },
3476         {
3477         .description = "tl2_num_vtags",
3478         .field_bit_size = 2,
3479         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3480         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3481         },
3482         {
3483         .description = "tun_hdr_type",
3484         .field_bit_size = 4,
3485         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3486         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3487         },
3488         {
3489         .description = "key_type",
3490         .field_bit_size = 2,
3491         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
3492         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
3493                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
3494         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3495         },
3496         {
3497         .description = "valid",
3498         .field_bit_size = 1,
3499         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
3500         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
3501                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
3502         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
3503         .spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
3504                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
3505         },
3506         /* class_tid: 6, wh_plus, table: profile_tcam_cache_0 */
3507         {
3508         .description = "recycle",
3509         .field_bit_size = 1,
3510         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3511         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3512         },
3513         {
3514         .description = "prof_func_id",
3515         .field_bit_size = 7,
3516         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3517         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
3518         .spec_operand = {
3519                 (BNXT_ULP_GLB_REGFILE_INDEX_L2_PROF_FUNC_ID >> 8) & 0xff,
3520                 BNXT_ULP_GLB_REGFILE_INDEX_L2_PROF_FUNC_ID & 0xff,
3521                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
3522                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
3523         },
3524         {
3525         .description = "class_tid",
3526         .field_bit_size = 8,
3527         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3528         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
3529         .spec_operand = {
3530                 (BNXT_ULP_REGFILE_INDEX_CLASS_TID >> 8) & 0xff,
3531                 BNXT_ULP_REGFILE_INDEX_CLASS_TID & 0xff,
3532                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
3533                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
3534         },
3535         /* class_tid: 6, wh_plus, table: profile_tcam_0 */
3536         {
3537         .description = "l4_hdr_is_udp_tcp",
3538         .field_bit_size = 1,
3539         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3540         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3541         },
3542         {
3543         .description = "l4_hdr_type",
3544         .field_bit_size = 4,
3545         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3546         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3547         },
3548         {
3549         .description = "l4_hdr_error",
3550         .field_bit_size = 1,
3551         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3552         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3553         },
3554         {
3555         .description = "l4_hdr_valid",
3556         .field_bit_size = 1,
3557         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3558         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3559         },
3560         {
3561         .description = "l3_ipv6_cmp_dst",
3562         .field_bit_size = 1,
3563         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3564         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3565         },
3566         {
3567         .description = "l3_ipv6_cmp_src",
3568         .field_bit_size = 1,
3569         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3570         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3571         },
3572         {
3573         .description = "l3_hdr_isIP",
3574         .field_bit_size = 1,
3575         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3576         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3577         },
3578         {
3579         .description = "l3_hdr_type",
3580         .field_bit_size = 4,
3581         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
3582         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
3583                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
3584         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3585         },
3586         {
3587         .description = "l3_hdr_error",
3588         .field_bit_size = 1,
3589         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
3590         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
3591                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
3592         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3593         },
3594         {
3595         .description = "l3_hdr_valid",
3596         .field_bit_size = 1,
3597         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
3598         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
3599                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
3600         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
3601         .spec_operand = {
3602                 BNXT_ULP_SYM_L3_HDR_VALID_YES,
3603                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
3604                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
3605         },
3606         {
3607         .description = "l2_two_vtags",
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 = "l2_vtag_present",
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 = "l2_uc_mc_bc",
3620         .field_bit_size = 2,
3621         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
3622         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
3623                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
3624         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3625         },
3626         {
3627         .description = "l2_hdr_type",
3628         .field_bit_size = 2,
3629         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
3630         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
3631                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
3632         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3633         },
3634         {
3635         .description = "l2_hdr_error",
3636         .field_bit_size = 1,
3637         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
3638         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
3639                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
3640         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3641         },
3642         {
3643         .description = "l2_hdr_valid",
3644         .field_bit_size = 1,
3645         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
3646         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
3647                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
3648         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
3649         .spec_operand = {
3650                 BNXT_ULP_SYM_L2_HDR_VALID_YES,
3651                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
3652                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
3653         },
3654         {
3655         .description = "tun_hdr_flags",
3656         .field_bit_size = 3,
3657         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3658         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3659         },
3660         {
3661         .description = "tun_hdr_type",
3662         .field_bit_size = 4,
3663         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3664         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3665         },
3666         {
3667         .description = "tun_hdr_error",
3668         .field_bit_size = 1,
3669         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3670         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3671         },
3672         {
3673         .description = "tun_hdr_valid",
3674         .field_bit_size = 1,
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 = "tl4_hdr_is_udp_tcp",
3682         .field_bit_size = 1,
3683         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3684         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3685         },
3686         {
3687         .description = "tl4_hdr_type",
3688         .field_bit_size = 4,
3689         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3690         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3691         },
3692         {
3693         .description = "tl4_hdr_error",
3694         .field_bit_size = 1,
3695         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3696         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3697         },
3698         {
3699         .description = "tl4_hdr_valid",
3700         .field_bit_size = 1,
3701         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
3702         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
3703                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
3704         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3705         },
3706         {
3707         .description = "tl3_ipv6_cmp_dst",
3708         .field_bit_size = 1,
3709         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3710         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3711         },
3712         {
3713         .description = "tl3_ipv6_cmp_src",
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 = "tl3_hdr_isIP",
3720         .field_bit_size = 1,
3721         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3722         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3723         },
3724         {
3725         .description = "tl3_hdr_type",
3726         .field_bit_size = 4,
3727         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3728         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3729         },
3730         {
3731         .description = "tl3_hdr_error",
3732         .field_bit_size = 1,
3733         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3734         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3735         },
3736         {
3737         .description = "tl3_hdr_valid",
3738         .field_bit_size = 1,
3739         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
3740         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
3741                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
3742         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3743         },
3744         {
3745         .description = "tl2_two_vtags",
3746         .field_bit_size = 1,
3747         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3748         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3749         },
3750         {
3751         .description = "tl2_vtag_present",
3752         .field_bit_size = 1,
3753         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3754         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3755         },
3756         {
3757         .description = "tl2_uc_mc_bc",
3758         .field_bit_size = 2,
3759         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3760         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3761         },
3762         {
3763         .description = "tl2_hdr_type",
3764         .field_bit_size = 2,
3765         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3766         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3767         },
3768         {
3769         .description = "tl2_hdr_valid",
3770         .field_bit_size = 1,
3771         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
3772         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
3773                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
3774         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3775         },
3776         {
3777         .description = "hrec_next",
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 = "reserved",
3784         .field_bit_size = 9,
3785         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3786         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3787         },
3788         {
3789         .description = "prof_func_id",
3790         .field_bit_size = 7,
3791         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
3792         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
3793                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
3794         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
3795         .spec_operand = {
3796                 (BNXT_ULP_GLB_REGFILE_INDEX_L2_PROF_FUNC_ID >> 8) & 0xff,
3797                 BNXT_ULP_GLB_REGFILE_INDEX_L2_PROF_FUNC_ID & 0xff,
3798                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
3799                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
3800         },
3801         {
3802         .description = "agg_error",
3803         .field_bit_size = 1,
3804         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3805         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3806         },
3807         {
3808         .description = "recycle_cnt",
3809         .field_bit_size = 2,
3810         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
3811         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
3812                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
3813         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3814         },
3815         {
3816         .description = "pkt_type_0",
3817         .field_bit_size = 2,
3818         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3819         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3820         },
3821         {
3822         .description = "pkt_type_1",
3823         .field_bit_size = 2,
3824         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
3825         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
3826                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
3827         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3828         },
3829         {
3830         .description = "valid",
3831         .field_bit_size = 1,
3832         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
3833         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
3834                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
3835         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
3836         .spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
3837                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
3838         },
3839         /* class_tid: 6, wh_plus, table: ext_em_0 */
3840         {
3841         .description = "spare",
3842         .field_bit_size = 251,
3843         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3844         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3845         },
3846         {
3847         .description = "local_cos",
3848         .field_bit_size = 3,
3849         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3850         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3851         },
3852         {
3853         .description = "l4_dst_port",
3854         .field_bit_size = 16,
3855         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3856         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3857         },
3858         {
3859         .description = "l4_src_port",
3860         .field_bit_size = 16,
3861         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3862         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3863         },
3864         {
3865         .description = "ip_proto",
3866         .field_bit_size = 8,
3867         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3868         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3869         },
3870         {
3871         .description = "ipv4_dst_addr",
3872         .field_bit_size = 32,
3873         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3874         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3875         },
3876         {
3877         .description = "ipv4_src_addr",
3878         .field_bit_size = 32,
3879         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3880         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3881         },
3882         {
3883         .description = "l2_src_mac",
3884         .field_bit_size = 48,
3885         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3886         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
3887         .spec_operand = {
3888                 (BNXT_ULP_HF6_IDX_O_ETH_SMAC >> 8) & 0xff,
3889                 BNXT_ULP_HF6_IDX_O_ETH_SMAC & 0xff,
3890                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
3891                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
3892         },
3893         {
3894         .description = "tun_id",
3895         .field_bit_size = 24,
3896         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3897         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3898         },
3899         {
3900         .description = "l2_cntxt_id",
3901         .field_bit_size = 10,
3902         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3903         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
3904         .spec_operand = {
3905                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
3906                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
3907                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
3908                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
3909         },
3910         {
3911         .description = "em_profile_id",
3912         .field_bit_size = 8,
3913         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3914         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
3915         .spec_operand = {
3916                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
3917                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
3918                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
3919                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
3920         },
3921         /* class_tid: 6, wh_plus, table: int_em_0 */
3922         {
3923         .description = "spare",
3924         .field_bit_size = 3,
3925         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3926         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3927         },
3928         {
3929         .description = "local_cos",
3930         .field_bit_size = 3,
3931         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3932         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3933         },
3934         {
3935         .description = "l4_dst_port",
3936         .field_bit_size = 16,
3937         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3938         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3939         },
3940         {
3941         .description = "l4_src_port",
3942         .field_bit_size = 16,
3943         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3944         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3945         },
3946         {
3947         .description = "ip_proto",
3948         .field_bit_size = 8,
3949         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3950         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3951         },
3952         {
3953         .description = "ipv4_dst_addr",
3954         .field_bit_size = 32,
3955         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3956         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3957         },
3958         {
3959         .description = "ipv4_src_addr",
3960         .field_bit_size = 32,
3961         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3962         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3963         },
3964         {
3965         .description = "l2_src_mac",
3966         .field_bit_size = 48,
3967         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3968         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
3969         .spec_operand = {
3970                 (BNXT_ULP_HF6_IDX_O_ETH_SMAC >> 8) & 0xff,
3971                 BNXT_ULP_HF6_IDX_O_ETH_SMAC & 0xff,
3972                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
3973                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
3974         },
3975         {
3976         .description = "tun_id",
3977         .field_bit_size = 24,
3978         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3979         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3980         },
3981         {
3982         .description = "l2_cntxt_id",
3983         .field_bit_size = 10,
3984         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3985         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
3986         .spec_operand = {
3987                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
3988                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
3989                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
3990                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
3991         },
3992         {
3993         .description = "em_profile_id",
3994         .field_bit_size = 8,
3995         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3996         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
3997         .spec_operand = {
3998                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
3999                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
4000                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
4001                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
4002         },
4003         /* class_tid: 7, wh_plus, table: l2_cntxt_tcam_0 */
4004         {
4005         .description = "l2_ivlan_vid",
4006         .field_bit_size = 12,
4007         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
4008         .mask_operand = {
4009                 (BNXT_ULP_HF7_IDX_OO_VLAN_VID >> 8) & 0xff,
4010                 BNXT_ULP_HF7_IDX_OO_VLAN_VID & 0xff,
4011                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
4012                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
4013         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
4014         .spec_operand = {
4015                 (BNXT_ULP_HF7_IDX_OO_VLAN_VID >> 8) & 0xff,
4016                 BNXT_ULP_HF7_IDX_OO_VLAN_VID & 0xff,
4017                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
4018                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
4019         },
4020         {
4021         .description = "l2_ovlan_vid",
4022         .field_bit_size = 12,
4023         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4024         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4025         },
4026         {
4027         .description = "mac0_l2_addr",
4028         .field_bit_size = 48,
4029         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
4030         .mask_operand = {
4031                 (BNXT_ULP_HF7_IDX_O_ETH_DMAC >> 8) & 0xff,
4032                 BNXT_ULP_HF7_IDX_O_ETH_DMAC & 0xff,
4033                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
4034                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
4035         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
4036         .spec_operand = {
4037                 (BNXT_ULP_HF7_IDX_O_ETH_DMAC >> 8) & 0xff,
4038                 BNXT_ULP_HF7_IDX_O_ETH_DMAC & 0xff,
4039                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
4040                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
4041         },
4042         {
4043         .description = "svif",
4044         .field_bit_size = 8,
4045         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
4046         .mask_operand = {
4047                 (BNXT_ULP_HF7_IDX_SVIF_INDEX >> 8) & 0xff,
4048                 BNXT_ULP_HF7_IDX_SVIF_INDEX & 0xff,
4049                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
4050                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
4051         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
4052         .spec_operand = {
4053                 (BNXT_ULP_HF7_IDX_SVIF_INDEX >> 8) & 0xff,
4054                 BNXT_ULP_HF7_IDX_SVIF_INDEX & 0xff,
4055                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
4056                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
4057         },
4058         {
4059         .description = "sparif",
4060         .field_bit_size = 4,
4061         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4062         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4063         },
4064         {
4065         .description = "tl2_ivlan_vid",
4066         .field_bit_size = 12,
4067         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4068         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4069         },
4070         {
4071         .description = "tl2_ovlan_vid",
4072         .field_bit_size = 12,
4073         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4074         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4075         },
4076         {
4077         .description = "mac1_tl2_addr",
4078         .field_bit_size = 48,
4079         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4080         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4081         },
4082         {
4083         .description = "l2_num_vtags",
4084         .field_bit_size = 2,
4085         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
4086         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
4087                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
4088         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,
4089         .spec_operand = {
4090                 (BNXT_ULP_CF_IDX_O_VTAG_NUM >> 8) & 0xff,
4091                 BNXT_ULP_CF_IDX_O_VTAG_NUM & 0xff,
4092                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
4093                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
4094         },
4095         {
4096         .description = "tl2_num_vtags",
4097         .field_bit_size = 2,
4098         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4099         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4100         },
4101         {
4102         .description = "tun_hdr_type",
4103         .field_bit_size = 4,
4104         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4105         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4106         },
4107         {
4108         .description = "key_type",
4109         .field_bit_size = 2,
4110         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
4111         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
4112                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
4113         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4114         },
4115         {
4116         .description = "valid",
4117         .field_bit_size = 1,
4118         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
4119         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
4120                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
4121         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
4122         .spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
4123                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
4124         },
4125         /* class_tid: 7, wh_plus, table: profile_tcam_cache_0 */
4126         {
4127         .description = "recycle",
4128         .field_bit_size = 1,
4129         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4130         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4131         },
4132         {
4133         .description = "prof_func_id",
4134         .field_bit_size = 7,
4135         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4136         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
4137         .spec_operand = {
4138                 (BNXT_ULP_GLB_REGFILE_INDEX_L2_PROF_FUNC_ID >> 8) & 0xff,
4139                 BNXT_ULP_GLB_REGFILE_INDEX_L2_PROF_FUNC_ID & 0xff,
4140                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
4141                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
4142         },
4143         {
4144         .description = "class_tid",
4145         .field_bit_size = 8,
4146         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4147         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
4148         .spec_operand = {
4149                 (BNXT_ULP_REGFILE_INDEX_CLASS_TID >> 8) & 0xff,
4150                 BNXT_ULP_REGFILE_INDEX_CLASS_TID & 0xff,
4151                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
4152                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
4153         },
4154         /* class_tid: 7, wh_plus, table: profile_tcam_0 */
4155         {
4156         .description = "l4_hdr_is_udp_tcp",
4157         .field_bit_size = 1,
4158         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4159         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4160         },
4161         {
4162         .description = "l4_hdr_type",
4163         .field_bit_size = 4,
4164         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4165         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4166         },
4167         {
4168         .description = "l4_hdr_error",
4169         .field_bit_size = 1,
4170         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4171         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4172         },
4173         {
4174         .description = "l4_hdr_valid",
4175         .field_bit_size = 1,
4176         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4177         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4178         },
4179         {
4180         .description = "l3_ipv6_cmp_dst",
4181         .field_bit_size = 1,
4182         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4183         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4184         },
4185         {
4186         .description = "l3_ipv6_cmp_src",
4187         .field_bit_size = 1,
4188         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4189         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4190         },
4191         {
4192         .description = "l3_hdr_isIP",
4193         .field_bit_size = 1,
4194         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4195         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4196         },
4197         {
4198         .description = "l3_hdr_type",
4199         .field_bit_size = 4,
4200         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
4201         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
4202                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
4203         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
4204         .spec_operand = {
4205                 BNXT_ULP_SYM_L3_HDR_TYPE_IPV6,
4206                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
4207                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
4208         },
4209         {
4210         .description = "l3_hdr_error",
4211         .field_bit_size = 1,
4212         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
4213         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
4214                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
4215         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4216         },
4217         {
4218         .description = "l3_hdr_valid",
4219         .field_bit_size = 1,
4220         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
4221         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
4222                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
4223         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
4224         .spec_operand = {
4225                 BNXT_ULP_SYM_L3_HDR_VALID_YES,
4226                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
4227                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
4228         },
4229         {
4230         .description = "l2_two_vtags",
4231         .field_bit_size = 1,
4232         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4233         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4234         },
4235         {
4236         .description = "l2_vtag_present",
4237         .field_bit_size = 1,
4238         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4239         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4240         },
4241         {
4242         .description = "l2_uc_mc_bc",
4243         .field_bit_size = 2,
4244         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
4245         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
4246                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
4247         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4248         },
4249         {
4250         .description = "l2_hdr_type",
4251         .field_bit_size = 2,
4252         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
4253         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
4254                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
4255         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4256         },
4257         {
4258         .description = "l2_hdr_error",
4259         .field_bit_size = 1,
4260         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
4261         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
4262                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
4263         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4264         },
4265         {
4266         .description = "l2_hdr_valid",
4267         .field_bit_size = 1,
4268         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
4269         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
4270                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
4271         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
4272         .spec_operand = {
4273                 BNXT_ULP_SYM_L2_HDR_VALID_YES,
4274                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
4275                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
4276         },
4277         {
4278         .description = "tun_hdr_flags",
4279         .field_bit_size = 3,
4280         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4281         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4282         },
4283         {
4284         .description = "tun_hdr_type",
4285         .field_bit_size = 4,
4286         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4287         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4288         },
4289         {
4290         .description = "tun_hdr_error",
4291         .field_bit_size = 1,
4292         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4293         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4294         },
4295         {
4296         .description = "tun_hdr_valid",
4297         .field_bit_size = 1,
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 = "tl4_hdr_is_udp_tcp",
4305         .field_bit_size = 1,
4306         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4307         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4308         },
4309         {
4310         .description = "tl4_hdr_type",
4311         .field_bit_size = 4,
4312         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4313         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4314         },
4315         {
4316         .description = "tl4_hdr_error",
4317         .field_bit_size = 1,
4318         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4319         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4320         },
4321         {
4322         .description = "tl4_hdr_valid",
4323         .field_bit_size = 1,
4324         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
4325         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
4326                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
4327         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4328         },
4329         {
4330         .description = "tl3_ipv6_cmp_dst",
4331         .field_bit_size = 1,
4332         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4333         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4334         },
4335         {
4336         .description = "tl3_ipv6_cmp_src",
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 = "tl3_hdr_isIP",
4343         .field_bit_size = 1,
4344         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4345         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4346         },
4347         {
4348         .description = "tl3_hdr_type",
4349         .field_bit_size = 4,
4350         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4351         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4352         },
4353         {
4354         .description = "tl3_hdr_error",
4355         .field_bit_size = 1,
4356         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4357         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4358         },
4359         {
4360         .description = "tl3_hdr_valid",
4361         .field_bit_size = 1,
4362         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
4363         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
4364                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
4365         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4366         },
4367         {
4368         .description = "tl2_two_vtags",
4369         .field_bit_size = 1,
4370         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4371         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4372         },
4373         {
4374         .description = "tl2_vtag_present",
4375         .field_bit_size = 1,
4376         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4377         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4378         },
4379         {
4380         .description = "tl2_uc_mc_bc",
4381         .field_bit_size = 2,
4382         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4383         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4384         },
4385         {
4386         .description = "tl2_hdr_type",
4387         .field_bit_size = 2,
4388         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4389         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4390         },
4391         {
4392         .description = "tl2_hdr_valid",
4393         .field_bit_size = 1,
4394         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
4395         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
4396                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
4397         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4398         },
4399         {
4400         .description = "hrec_next",
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 = "reserved",
4407         .field_bit_size = 9,
4408         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4409         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4410         },
4411         {
4412         .description = "prof_func_id",
4413         .field_bit_size = 7,
4414         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
4415         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
4416                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
4417         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
4418         .spec_operand = {
4419                 (BNXT_ULP_GLB_REGFILE_INDEX_L2_PROF_FUNC_ID >> 8) & 0xff,
4420                 BNXT_ULP_GLB_REGFILE_INDEX_L2_PROF_FUNC_ID & 0xff,
4421                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
4422                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
4423         },
4424         {
4425         .description = "agg_error",
4426         .field_bit_size = 1,
4427         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4428         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4429         },
4430         {
4431         .description = "recycle_cnt",
4432         .field_bit_size = 2,
4433         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
4434         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
4435                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
4436         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4437         },
4438         {
4439         .description = "pkt_type_0",
4440         .field_bit_size = 2,
4441         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4442         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4443         },
4444         {
4445         .description = "pkt_type_1",
4446         .field_bit_size = 2,
4447         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
4448         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
4449                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
4450         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4451         },
4452         {
4453         .description = "valid",
4454         .field_bit_size = 1,
4455         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
4456         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
4457                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
4458         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
4459         .spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
4460                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
4461         },
4462         /* class_tid: 7, wh_plus, table: ext_em_0 */
4463         {
4464         .description = "spare",
4465         .field_bit_size = 251,
4466         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4467         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4468         },
4469         {
4470         .description = "local_cos",
4471         .field_bit_size = 3,
4472         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4473         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4474         },
4475         {
4476         .description = "l4_dst_port",
4477         .field_bit_size = 16,
4478         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4479         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4480         },
4481         {
4482         .description = "l4_src_port",
4483         .field_bit_size = 16,
4484         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4485         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4486         },
4487         {
4488         .description = "ip_proto",
4489         .field_bit_size = 8,
4490         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4491         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4492         },
4493         {
4494         .description = "ipv4_dst_addr",
4495         .field_bit_size = 32,
4496         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4497         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4498         },
4499         {
4500         .description = "ipv4_src_addr",
4501         .field_bit_size = 32,
4502         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4503         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4504         },
4505         {
4506         .description = "l2_src_mac",
4507         .field_bit_size = 48,
4508         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4509         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
4510         .spec_operand = {
4511                 (BNXT_ULP_HF7_IDX_O_ETH_SMAC >> 8) & 0xff,
4512                 BNXT_ULP_HF7_IDX_O_ETH_SMAC & 0xff,
4513                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
4514                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
4515         },
4516         {
4517         .description = "tun_id",
4518         .field_bit_size = 24,
4519         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4520         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4521         },
4522         {
4523         .description = "l2_cntxt_id",
4524         .field_bit_size = 10,
4525         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4526         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
4527         .spec_operand = {
4528                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
4529                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
4530                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
4531                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
4532         },
4533         {
4534         .description = "em_profile_id",
4535         .field_bit_size = 8,
4536         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4537         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
4538         .spec_operand = {
4539                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
4540                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
4541                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
4542                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
4543         },
4544         /* class_tid: 7, wh_plus, table: int_em_0 */
4545         {
4546         .description = "spare",
4547         .field_bit_size = 3,
4548         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4549         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4550         },
4551         {
4552         .description = "local_cos",
4553         .field_bit_size = 3,
4554         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4555         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4556         },
4557         {
4558         .description = "l4_dst_port",
4559         .field_bit_size = 16,
4560         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4561         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4562         },
4563         {
4564         .description = "l4_src_port",
4565         .field_bit_size = 16,
4566         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4567         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4568         },
4569         {
4570         .description = "ip_proto",
4571         .field_bit_size = 8,
4572         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4573         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4574         },
4575         {
4576         .description = "ipv4_dst_addr",
4577         .field_bit_size = 32,
4578         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4579         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4580         },
4581         {
4582         .description = "ipv4_src_addr",
4583         .field_bit_size = 32,
4584         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4585         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4586         },
4587         {
4588         .description = "l2_src_mac",
4589         .field_bit_size = 48,
4590         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4591         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
4592         .spec_operand = {
4593                 (BNXT_ULP_HF7_IDX_O_ETH_SMAC >> 8) & 0xff,
4594                 BNXT_ULP_HF7_IDX_O_ETH_SMAC & 0xff,
4595                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
4596                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
4597         },
4598         {
4599         .description = "tun_id",
4600         .field_bit_size = 24,
4601         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4602         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4603         },
4604         {
4605         .description = "l2_cntxt_id",
4606         .field_bit_size = 10,
4607         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4608         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
4609         .spec_operand = {
4610                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
4611                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
4612                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
4613                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
4614         },
4615         {
4616         .description = "em_profile_id",
4617         .field_bit_size = 8,
4618         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4619         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
4620         .spec_operand = {
4621                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
4622                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
4623                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
4624                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
4625         },
4626         /* class_tid: 8, wh_plus, table: l2_cntxt_cache_0 */
4627         {
4628         .description = "svif",
4629         .field_bit_size = 8,
4630         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4631         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
4632         .spec_operand = {
4633                 (BNXT_ULP_HF8_IDX_SVIF_INDEX >> 8) & 0xff,
4634                 BNXT_ULP_HF8_IDX_SVIF_INDEX & 0xff,
4635                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
4636                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
4637         },
4638         /* class_tid: 8, wh_plus, table: l2_cntxt_tcam_0 */
4639         {
4640         .description = "l2_ivlan_vid",
4641         .field_bit_size = 12,
4642         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4643         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4644         },
4645         {
4646         .description = "l2_ovlan_vid",
4647         .field_bit_size = 12,
4648         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4649         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4650         },
4651         {
4652         .description = "mac0_l2_dst",
4653         .field_bit_size = 48,
4654         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4655         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4656         },
4657         {
4658         .description = "svif",
4659         .field_bit_size = 8,
4660         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
4661         .mask_operand = {
4662                 (BNXT_ULP_HF8_IDX_SVIF_INDEX >> 8) & 0xff,
4663                 BNXT_ULP_HF8_IDX_SVIF_INDEX & 0xff,
4664                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
4665                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
4666         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
4667         .spec_operand = {
4668                 (BNXT_ULP_HF8_IDX_SVIF_INDEX >> 8) & 0xff,
4669                 BNXT_ULP_HF8_IDX_SVIF_INDEX & 0xff,
4670                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
4671                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
4672         },
4673         {
4674         .description = "sparif",
4675         .field_bit_size = 4,
4676         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4677         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4678         },
4679         {
4680         .description = "tl2_ivlan_vid",
4681         .field_bit_size = 12,
4682         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4683         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4684         },
4685         {
4686         .description = "tl2_ovlan_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 = "mac1_tl2_dst",
4693         .field_bit_size = 48,
4694         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4695         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4696         },
4697         {
4698         .description = "l2_num_vtags",
4699         .field_bit_size = 2,
4700         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4701         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4702         },
4703         {
4704         .description = "tl2_num_vtags",
4705         .field_bit_size = 2,
4706         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4707         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4708         },
4709         {
4710         .description = "tun_hdr_type",
4711         .field_bit_size = 4,
4712         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4713         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4714         },
4715         {
4716         .description = "key_type",
4717         .field_bit_size = 2,
4718         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4719         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4720         },
4721         {
4722         .description = "valid",
4723         .field_bit_size = 1,
4724         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
4725         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
4726                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
4727         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
4728         .spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
4729                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
4730         },
4731         /* class_tid: 8, wh_plus, table: profile_tcam_cache_0 */
4732         {
4733         .description = "recycle",
4734         .field_bit_size = 1,
4735         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4736         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4737         },
4738         {
4739         .description = "prof_func_id",
4740         .field_bit_size = 7,
4741         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4742         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
4743         .spec_operand = {
4744                 (BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID >> 8) & 0xff,
4745                 BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID & 0xff,
4746                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
4747                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
4748         },
4749         {
4750         .description = "class_tid",
4751         .field_bit_size = 8,
4752         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4753         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
4754         .spec_operand = {
4755                 (BNXT_ULP_REGFILE_INDEX_CLASS_TID >> 8) & 0xff,
4756                 BNXT_ULP_REGFILE_INDEX_CLASS_TID & 0xff,
4757                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
4758                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
4759         },
4760         /* class_tid: 8, wh_plus, table: profile_tcam_0 */
4761         {
4762         .description = "l4_hdr_is_udp_tcp",
4763         .field_bit_size = 1,
4764         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4765         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4766         },
4767         {
4768         .description = "l4_hdr_type",
4769         .field_bit_size = 4,
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 = {
4775                 BNXT_ULP_SYM_L4_HDR_TYPE_UDP,
4776                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
4777                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
4778         },
4779         {
4780         .description = "l4_hdr_error",
4781         .field_bit_size = 1,
4782         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
4783         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
4784                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
4785         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4786         },
4787         {
4788         .description = "l4_hdr_valid",
4789         .field_bit_size = 1,
4790         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
4791         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
4792                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
4793         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
4794         .spec_operand = {
4795                 BNXT_ULP_SYM_L4_HDR_VALID_YES,
4796                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
4797                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
4798         },
4799         {
4800         .description = "l3_ipv6_cmp_dst",
4801         .field_bit_size = 1,
4802         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4803         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4804         },
4805         {
4806         .description = "l3_ipv6_cmp_src",
4807         .field_bit_size = 1,
4808         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4809         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4810         },
4811         {
4812         .description = "l3_hdr_isIP",
4813         .field_bit_size = 1,
4814         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4815         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4816         },
4817         {
4818         .description = "l3_hdr_type",
4819         .field_bit_size = 4,
4820         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
4821         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
4822                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
4823         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4824         },
4825         {
4826         .description = "l3_hdr_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 = "l3_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_L3_HDR_VALID_YES,
4842                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
4843                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
4844         },
4845         {
4846         .description = "l2_two_vtags",
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 = "l2_vtag_present",
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 = "l2_uc_mc_bc",
4859         .field_bit_size = 2,
4860         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
4861         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
4862                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
4863         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4864         },
4865         {
4866         .description = "l2_hdr_type",
4867         .field_bit_size = 2,
4868         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
4869         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
4870                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
4871         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4872         },
4873         {
4874         .description = "l2_hdr_error",
4875         .field_bit_size = 1,
4876         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
4877         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
4878                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
4879         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4880         },
4881         {
4882         .description = "l2_hdr_valid",
4883         .field_bit_size = 1,
4884         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
4885         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
4886                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
4887         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
4888         .spec_operand = {
4889                 BNXT_ULP_SYM_L2_HDR_VALID_YES,
4890                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
4891                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
4892         },
4893         {
4894         .description = "tun_hdr_flags",
4895         .field_bit_size = 3,
4896         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4897         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4898         },
4899         {
4900         .description = "tun_hdr_type",
4901         .field_bit_size = 4,
4902         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4903         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4904         },
4905         {
4906         .description = "tun_hdr_error",
4907         .field_bit_size = 1,
4908         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4909         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4910         },
4911         {
4912         .description = "tun_hdr_valid",
4913         .field_bit_size = 1,
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 = "tl4_hdr_is_udp_tcp",
4921         .field_bit_size = 1,
4922         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4923         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4924         },
4925         {
4926         .description = "tl4_hdr_type",
4927         .field_bit_size = 4,
4928         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4929         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4930         },
4931         {
4932         .description = "tl4_hdr_error",
4933         .field_bit_size = 1,
4934         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4935         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4936         },
4937         {
4938         .description = "tl4_hdr_valid",
4939         .field_bit_size = 1,
4940         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
4941         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
4942                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
4943         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4944         },
4945         {
4946         .description = "tl3_ipv6_cmp_dst",
4947         .field_bit_size = 1,
4948         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4949         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4950         },
4951         {
4952         .description = "tl3_ipv6_cmp_src",
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 = "tl3_hdr_isIP",
4959         .field_bit_size = 1,
4960         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4961         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4962         },
4963         {
4964         .description = "tl3_hdr_type",
4965         .field_bit_size = 4,
4966         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4967         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4968         },
4969         {
4970         .description = "tl3_hdr_error",
4971         .field_bit_size = 1,
4972         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4973         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4974         },
4975         {
4976         .description = "tl3_hdr_valid",
4977         .field_bit_size = 1,
4978         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
4979         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
4980                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
4981         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4982         },
4983         {
4984         .description = "tl2_two_vtags",
4985         .field_bit_size = 1,
4986         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4987         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4988         },
4989         {
4990         .description = "tl2_vtag_present",
4991         .field_bit_size = 1,
4992         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4993         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4994         },
4995         {
4996         .description = "tl2_uc_mc_bc",
4997         .field_bit_size = 2,
4998         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4999         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5000         },
5001         {
5002         .description = "tl2_hdr_type",
5003         .field_bit_size = 2,
5004         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5005         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5006         },
5007         {
5008         .description = "tl2_hdr_valid",
5009         .field_bit_size = 1,
5010         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
5011         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
5012                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
5013         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5014         },
5015         {
5016         .description = "hrec_next",
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 = "reserved",
5023         .field_bit_size = 9,
5024         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5025         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5026         },
5027         {
5028         .description = "prof_func_id",
5029         .field_bit_size = 7,
5030         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
5031         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
5032                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
5033         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
5034         .spec_operand = {
5035                 (BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID >> 8) & 0xff,
5036                 BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID & 0xff,
5037                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
5038                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
5039         },
5040         {
5041         .description = "agg_error",
5042         .field_bit_size = 1,
5043         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5044         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5045         },
5046         {
5047         .description = "recycle_cnt",
5048         .field_bit_size = 2,
5049         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
5050         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
5051                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
5052         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5053         },
5054         {
5055         .description = "pkt_type_0",
5056         .field_bit_size = 2,
5057         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5058         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5059         },
5060         {
5061         .description = "pkt_type_1",
5062         .field_bit_size = 2,
5063         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
5064         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
5065                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
5066         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5067         },
5068         {
5069         .description = "valid",
5070         .field_bit_size = 1,
5071         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
5072         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
5073                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
5074         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
5075         .spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
5076                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
5077         },
5078         /* class_tid: 8, wh_plus, table: ext_em_0 */
5079         {
5080         .description = "spare",
5081         .field_bit_size = 251,
5082         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5083         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5084         },
5085         {
5086         .description = "local_cos",
5087         .field_bit_size = 3,
5088         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5089         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5090         },
5091         {
5092         .description = "l4_dst_port",
5093         .field_bit_size = 16,
5094         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5095         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
5096         .spec_operand = {
5097                 (BNXT_ULP_HF8_IDX_O_UDP_DST_PORT >> 8) & 0xff,
5098                 BNXT_ULP_HF8_IDX_O_UDP_DST_PORT & 0xff,
5099                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
5100                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
5101         },
5102         {
5103         .description = "l4_src_port",
5104         .field_bit_size = 16,
5105         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5106         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
5107         .spec_operand = {
5108                 (BNXT_ULP_HF8_IDX_O_UDP_SRC_PORT >> 8) & 0xff,
5109                 BNXT_ULP_HF8_IDX_O_UDP_SRC_PORT & 0xff,
5110                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
5111                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
5112         },
5113         {
5114         .description = "ip_proto",
5115         .field_bit_size = 8,
5116         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5117         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
5118         .spec_operand = {
5119                 BNXT_ULP_SYM_IP_PROTO_UDP,
5120                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
5121                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
5122         },
5123         {
5124         .description = "ipv4_dst_addr",
5125         .field_bit_size = 32,
5126         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5127         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
5128         .spec_operand = {
5129                 (BNXT_ULP_HF8_IDX_O_IPV4_DST_ADDR >> 8) & 0xff,
5130                 BNXT_ULP_HF8_IDX_O_IPV4_DST_ADDR & 0xff,
5131                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
5132                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
5133         },
5134         {
5135         .description = "ipv4_src_addr",
5136         .field_bit_size = 32,
5137         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5138         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
5139         .spec_operand = {
5140                 (BNXT_ULP_HF8_IDX_O_IPV4_SRC_ADDR >> 8) & 0xff,
5141                 BNXT_ULP_HF8_IDX_O_IPV4_SRC_ADDR & 0xff,
5142                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
5143                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
5144         },
5145         {
5146         .description = "l2_src_mac",
5147         .field_bit_size = 48,
5148         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5149         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5150         },
5151         {
5152         .description = "tun_id",
5153         .field_bit_size = 24,
5154         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5155         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5156         },
5157         {
5158         .description = "l2_cntxt_id",
5159         .field_bit_size = 10,
5160         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5161         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
5162         .spec_operand = {
5163                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
5164                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
5165                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
5166                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
5167         },
5168         {
5169         .description = "em_profile_id",
5170         .field_bit_size = 8,
5171         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5172         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
5173         .spec_operand = {
5174                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
5175                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
5176                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
5177                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
5178         },
5179         /* class_tid: 8, wh_plus, table: int_em_0 */
5180         {
5181         .description = "spare",
5182         .field_bit_size = 3,
5183         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5184         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5185         },
5186         {
5187         .description = "local_cos",
5188         .field_bit_size = 3,
5189         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5190         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5191         },
5192         {
5193         .description = "l4_dst_port",
5194         .field_bit_size = 16,
5195         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5196         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
5197         .spec_operand = {
5198                 (BNXT_ULP_HF8_IDX_O_UDP_DST_PORT >> 8) & 0xff,
5199                 BNXT_ULP_HF8_IDX_O_UDP_DST_PORT & 0xff,
5200                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
5201                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
5202         },
5203         {
5204         .description = "l4_src_port",
5205         .field_bit_size = 16,
5206         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5207         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
5208         .spec_operand = {
5209                 (BNXT_ULP_HF8_IDX_O_UDP_SRC_PORT >> 8) & 0xff,
5210                 BNXT_ULP_HF8_IDX_O_UDP_SRC_PORT & 0xff,
5211                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
5212                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
5213         },
5214         {
5215         .description = "ip_proto",
5216         .field_bit_size = 8,
5217         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5218         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
5219         .spec_operand = {
5220                 BNXT_ULP_SYM_IP_PROTO_UDP,
5221                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
5222                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
5223         },
5224         {
5225         .description = "ipv4_dst_addr",
5226         .field_bit_size = 32,
5227         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5228         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
5229         .spec_operand = {
5230                 (BNXT_ULP_HF8_IDX_O_IPV4_DST_ADDR >> 8) & 0xff,
5231                 BNXT_ULP_HF8_IDX_O_IPV4_DST_ADDR & 0xff,
5232                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
5233                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
5234         },
5235         {
5236         .description = "ipv4_src_addr",
5237         .field_bit_size = 32,
5238         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5239         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
5240         .spec_operand = {
5241                 (BNXT_ULP_HF8_IDX_O_IPV4_SRC_ADDR >> 8) & 0xff,
5242                 BNXT_ULP_HF8_IDX_O_IPV4_SRC_ADDR & 0xff,
5243                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
5244                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
5245         },
5246         {
5247         .description = "l2_src_mac",
5248         .field_bit_size = 48,
5249         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5250         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5251         },
5252         {
5253         .description = "tun_id",
5254         .field_bit_size = 24,
5255         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5256         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5257         },
5258         {
5259         .description = "l2_cntxt_id",
5260         .field_bit_size = 10,
5261         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5262         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
5263         .spec_operand = {
5264                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
5265                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
5266                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
5267                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
5268         },
5269         {
5270         .description = "em_profile_id",
5271         .field_bit_size = 8,
5272         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5273         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
5274         .spec_operand = {
5275                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
5276                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
5277                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
5278                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
5279         },
5280         /* class_tid: 9, wh_plus, table: l2_cntxt_cache_0 */
5281         {
5282         .description = "svif",
5283         .field_bit_size = 8,
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_HF9_IDX_SVIF_INDEX >> 8) & 0xff,
5288                 BNXT_ULP_HF9_IDX_SVIF_INDEX & 0xff,
5289                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
5290                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
5291         },
5292         /* class_tid: 9, wh_plus, table: l2_cntxt_tcam_0 */
5293         {
5294         .description = "l2_ivlan_vid",
5295         .field_bit_size = 12,
5296         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5297         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5298         },
5299         {
5300         .description = "l2_ovlan_vid",
5301         .field_bit_size = 12,
5302         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5303         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5304         },
5305         {
5306         .description = "mac0_l2_dst",
5307         .field_bit_size = 48,
5308         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5309         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5310         },
5311         {
5312         .description = "svif",
5313         .field_bit_size = 8,
5314         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
5315         .mask_operand = {
5316                 (BNXT_ULP_HF9_IDX_SVIF_INDEX >> 8) & 0xff,
5317                 BNXT_ULP_HF9_IDX_SVIF_INDEX & 0xff,
5318                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
5319                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
5320         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
5321         .spec_operand = {
5322                 (BNXT_ULP_HF9_IDX_SVIF_INDEX >> 8) & 0xff,
5323                 BNXT_ULP_HF9_IDX_SVIF_INDEX & 0xff,
5324                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
5325                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
5326         },
5327         {
5328         .description = "sparif",
5329         .field_bit_size = 4,
5330         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5331         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5332         },
5333         {
5334         .description = "tl2_ivlan_vid",
5335         .field_bit_size = 12,
5336         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5337         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5338         },
5339         {
5340         .description = "tl2_ovlan_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 = "mac1_tl2_dst",
5347         .field_bit_size = 48,
5348         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5349         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5350         },
5351         {
5352         .description = "l2_num_vtags",
5353         .field_bit_size = 2,
5354         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5355         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5356         },
5357         {
5358         .description = "tl2_num_vtags",
5359         .field_bit_size = 2,
5360         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5361         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5362         },
5363         {
5364         .description = "tun_hdr_type",
5365         .field_bit_size = 4,
5366         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5367         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5368         },
5369         {
5370         .description = "key_type",
5371         .field_bit_size = 2,
5372         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5373         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5374         },
5375         {
5376         .description = "valid",
5377         .field_bit_size = 1,
5378         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
5379         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
5380                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
5381         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
5382         .spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
5383                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
5384         },
5385         /* class_tid: 9, wh_plus, table: profile_tcam_cache_0 */
5386         {
5387         .description = "recycle",
5388         .field_bit_size = 1,
5389         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5390         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5391         },
5392         {
5393         .description = "prof_func_id",
5394         .field_bit_size = 7,
5395         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5396         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
5397         .spec_operand = {
5398                 (BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID >> 8) & 0xff,
5399                 BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID & 0xff,
5400                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
5401                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
5402         },
5403         {
5404         .description = "class_tid",
5405         .field_bit_size = 8,
5406         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5407         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
5408         .spec_operand = {
5409                 (BNXT_ULP_REGFILE_INDEX_CLASS_TID >> 8) & 0xff,
5410                 BNXT_ULP_REGFILE_INDEX_CLASS_TID & 0xff,
5411                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
5412                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
5413         },
5414         /* class_tid: 9, wh_plus, table: profile_tcam_0 */
5415         {
5416         .description = "l4_hdr_is_udp_tcp",
5417         .field_bit_size = 1,
5418         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5419         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5420         },
5421         {
5422         .description = "l4_hdr_type",
5423         .field_bit_size = 4,
5424         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
5425         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
5426                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
5427         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5428         },
5429         {
5430         .description = "l4_hdr_error",
5431         .field_bit_size = 1,
5432         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
5433         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
5434                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
5435         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5436         },
5437         {
5438         .description = "l4_hdr_valid",
5439         .field_bit_size = 1,
5440         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
5441         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
5442                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
5443         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
5444         .spec_operand = {
5445                 BNXT_ULP_SYM_L4_HDR_VALID_YES,
5446                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
5447                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
5448         },
5449         {
5450         .description = "l3_ipv6_cmp_dst",
5451         .field_bit_size = 1,
5452         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5453         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5454         },
5455         {
5456         .description = "l3_ipv6_cmp_src",
5457         .field_bit_size = 1,
5458         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5459         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5460         },
5461         {
5462         .description = "l3_hdr_isIP",
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 = "l3_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 = "l3_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 = "l3_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_L3_HDR_VALID_YES,
5492                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
5493                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
5494         },
5495         {
5496         .description = "l2_two_vtags",
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 = "l2_vtag_present",
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 = "l2_uc_mc_bc",
5509         .field_bit_size = 2,
5510         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
5511         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
5512                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
5513         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5514         },
5515         {
5516         .description = "l2_hdr_type",
5517         .field_bit_size = 2,
5518         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
5519         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
5520                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
5521         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5522         },
5523         {
5524         .description = "l2_hdr_error",
5525         .field_bit_size = 1,
5526         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
5527         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
5528                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
5529         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5530         },
5531         {
5532         .description = "l2_hdr_valid",
5533         .field_bit_size = 1,
5534         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
5535         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
5536                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
5537         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
5538         .spec_operand = {
5539                 BNXT_ULP_SYM_L2_HDR_VALID_YES,
5540                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
5541                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
5542         },
5543         {
5544         .description = "tun_hdr_flags",
5545         .field_bit_size = 3,
5546         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5547         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5548         },
5549         {
5550         .description = "tun_hdr_type",
5551         .field_bit_size = 4,
5552         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5553         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5554         },
5555         {
5556         .description = "tun_hdr_error",
5557         .field_bit_size = 1,
5558         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5559         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5560         },
5561         {
5562         .description = "tun_hdr_valid",
5563         .field_bit_size = 1,
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 = "tl4_hdr_is_udp_tcp",
5571         .field_bit_size = 1,
5572         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5573         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5574         },
5575         {
5576         .description = "tl4_hdr_type",
5577         .field_bit_size = 4,
5578         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5579         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5580         },
5581         {
5582         .description = "tl4_hdr_error",
5583         .field_bit_size = 1,
5584         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5585         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5586         },
5587         {
5588         .description = "tl4_hdr_valid",
5589         .field_bit_size = 1,
5590         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
5591         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
5592                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
5593         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5594         },
5595         {
5596         .description = "tl3_ipv6_cmp_dst",
5597         .field_bit_size = 1,
5598         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5599         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5600         },
5601         {
5602         .description = "tl3_ipv6_cmp_src",
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 = "tl3_hdr_isIP",
5609         .field_bit_size = 1,
5610         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5611         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5612         },
5613         {
5614         .description = "tl3_hdr_type",
5615         .field_bit_size = 4,
5616         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5617         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5618         },
5619         {
5620         .description = "tl3_hdr_error",
5621         .field_bit_size = 1,
5622         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5623         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5624         },
5625         {
5626         .description = "tl3_hdr_valid",
5627         .field_bit_size = 1,
5628         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
5629         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
5630                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
5631         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5632         },
5633         {
5634         .description = "tl2_two_vtags",
5635         .field_bit_size = 1,
5636         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5637         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5638         },
5639         {
5640         .description = "tl2_vtag_present",
5641         .field_bit_size = 1,
5642         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5643         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5644         },
5645         {
5646         .description = "tl2_uc_mc_bc",
5647         .field_bit_size = 2,
5648         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5649         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5650         },
5651         {
5652         .description = "tl2_hdr_type",
5653         .field_bit_size = 2,
5654         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5655         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5656         },
5657         {
5658         .description = "tl2_hdr_valid",
5659         .field_bit_size = 1,
5660         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
5661         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
5662                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
5663         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5664         },
5665         {
5666         .description = "hrec_next",
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 = "reserved",
5673         .field_bit_size = 9,
5674         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5675         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5676         },
5677         {
5678         .description = "prof_func_id",
5679         .field_bit_size = 7,
5680         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
5681         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
5682                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
5683         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
5684         .spec_operand = {
5685                 (BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID >> 8) & 0xff,
5686                 BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID & 0xff,
5687                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
5688                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
5689         },
5690         {
5691         .description = "agg_error",
5692         .field_bit_size = 1,
5693         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5694         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5695         },
5696         {
5697         .description = "recycle_cnt",
5698         .field_bit_size = 2,
5699         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
5700         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
5701                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
5702         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5703         },
5704         {
5705         .description = "pkt_type_0",
5706         .field_bit_size = 2,
5707         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5708         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5709         },
5710         {
5711         .description = "pkt_type_1",
5712         .field_bit_size = 2,
5713         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
5714         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
5715                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
5716         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5717         },
5718         {
5719         .description = "valid",
5720         .field_bit_size = 1,
5721         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
5722         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
5723                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
5724         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
5725         .spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
5726                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
5727         },
5728         /* class_tid: 9, wh_plus, table: ext_em_0 */
5729         {
5730         .description = "spare",
5731         .field_bit_size = 251,
5732         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5733         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5734         },
5735         {
5736         .description = "local_cos",
5737         .field_bit_size = 3,
5738         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5739         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5740         },
5741         {
5742         .description = "l4_dst_port",
5743         .field_bit_size = 16,
5744         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5745         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
5746         .spec_operand = {
5747                 (BNXT_ULP_HF9_IDX_O_TCP_DST_PORT >> 8) & 0xff,
5748                 BNXT_ULP_HF9_IDX_O_TCP_DST_PORT & 0xff,
5749                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
5750                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
5751         },
5752         {
5753         .description = "l4_src_port",
5754         .field_bit_size = 16,
5755         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5756         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
5757         .spec_operand = {
5758                 (BNXT_ULP_HF9_IDX_O_TCP_SRC_PORT >> 8) & 0xff,
5759                 BNXT_ULP_HF9_IDX_O_TCP_SRC_PORT & 0xff,
5760                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
5761                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
5762         },
5763         {
5764         .description = "ip_proto",
5765         .field_bit_size = 8,
5766         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5767         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
5768         .spec_operand = {
5769                 BNXT_ULP_SYM_IP_PROTO_TCP,
5770                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
5771                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
5772         },
5773         {
5774         .description = "ipv4_dst_addr",
5775         .field_bit_size = 32,
5776         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5777         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
5778         .spec_operand = {
5779                 (BNXT_ULP_HF9_IDX_O_IPV4_DST_ADDR >> 8) & 0xff,
5780                 BNXT_ULP_HF9_IDX_O_IPV4_DST_ADDR & 0xff,
5781                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
5782                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
5783         },
5784         {
5785         .description = "ipv4_src_addr",
5786         .field_bit_size = 32,
5787         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5788         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
5789         .spec_operand = {
5790                 (BNXT_ULP_HF9_IDX_O_IPV4_SRC_ADDR >> 8) & 0xff,
5791                 BNXT_ULP_HF9_IDX_O_IPV4_SRC_ADDR & 0xff,
5792                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
5793                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
5794         },
5795         {
5796         .description = "l2_src_mac",
5797         .field_bit_size = 48,
5798         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5799         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5800         },
5801         {
5802         .description = "tun_id",
5803         .field_bit_size = 24,
5804         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5805         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5806         },
5807         {
5808         .description = "l2_cntxt_id",
5809         .field_bit_size = 10,
5810         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5811         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
5812         .spec_operand = {
5813                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
5814                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
5815                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
5816                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
5817         },
5818         {
5819         .description = "em_profile_id",
5820         .field_bit_size = 8,
5821         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5822         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
5823         .spec_operand = {
5824                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
5825                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
5826                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
5827                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
5828         },
5829         /* class_tid: 9, wh_plus, table: int_em_0 */
5830         {
5831         .description = "spare",
5832         .field_bit_size = 3,
5833         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5834         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5835         },
5836         {
5837         .description = "local_cos",
5838         .field_bit_size = 3,
5839         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5840         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5841         },
5842         {
5843         .description = "l4_dst_port",
5844         .field_bit_size = 16,
5845         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5846         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
5847         .spec_operand = {
5848                 (BNXT_ULP_HF9_IDX_O_TCP_DST_PORT >> 8) & 0xff,
5849                 BNXT_ULP_HF9_IDX_O_TCP_DST_PORT & 0xff,
5850                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
5851                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
5852         },
5853         {
5854         .description = "l4_src_port",
5855         .field_bit_size = 16,
5856         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5857         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
5858         .spec_operand = {
5859                 (BNXT_ULP_HF9_IDX_O_TCP_SRC_PORT >> 8) & 0xff,
5860                 BNXT_ULP_HF9_IDX_O_TCP_SRC_PORT & 0xff,
5861                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
5862                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
5863         },
5864         {
5865         .description = "ip_proto",
5866         .field_bit_size = 8,
5867         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5868         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
5869         .spec_operand = {
5870                 BNXT_ULP_SYM_IP_PROTO_TCP,
5871                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
5872                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
5873         },
5874         {
5875         .description = "ipv4_dst_addr",
5876         .field_bit_size = 32,
5877         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5878         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
5879         .spec_operand = {
5880                 (BNXT_ULP_HF9_IDX_O_IPV4_DST_ADDR >> 8) & 0xff,
5881                 BNXT_ULP_HF9_IDX_O_IPV4_DST_ADDR & 0xff,
5882                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
5883                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
5884         },
5885         {
5886         .description = "ipv4_src_addr",
5887         .field_bit_size = 32,
5888         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5889         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
5890         .spec_operand = {
5891                 (BNXT_ULP_HF9_IDX_O_IPV4_SRC_ADDR >> 8) & 0xff,
5892                 BNXT_ULP_HF9_IDX_O_IPV4_SRC_ADDR & 0xff,
5893                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
5894                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
5895         },
5896         {
5897         .description = "l2_src_mac",
5898         .field_bit_size = 48,
5899         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5900         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5901         },
5902         {
5903         .description = "tun_id",
5904         .field_bit_size = 24,
5905         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5906         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5907         },
5908         {
5909         .description = "l2_cntxt_id",
5910         .field_bit_size = 10,
5911         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5912         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
5913         .spec_operand = {
5914                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
5915                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
5916                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
5917                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
5918         },
5919         {
5920         .description = "em_profile_id",
5921         .field_bit_size = 8,
5922         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5923         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
5924         .spec_operand = {
5925                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
5926                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
5927                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
5928                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
5929         },
5930         /* class_tid: 10, wh_plus, table: l2_cntxt_cache_0 */
5931         {
5932         .description = "svif",
5933         .field_bit_size = 8,
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_HF10_IDX_SVIF_INDEX >> 8) & 0xff,
5938                 BNXT_ULP_HF10_IDX_SVIF_INDEX & 0xff,
5939                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
5940                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
5941         },
5942         /* class_tid: 10, wh_plus, table: l2_cntxt_tcam_0 */
5943         {
5944         .description = "l2_ivlan_vid",
5945         .field_bit_size = 12,
5946         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5947         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5948         },
5949         {
5950         .description = "l2_ovlan_vid",
5951         .field_bit_size = 12,
5952         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5953         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5954         },
5955         {
5956         .description = "mac0_l2_dst",
5957         .field_bit_size = 48,
5958         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5959         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5960         },
5961         {
5962         .description = "svif",
5963         .field_bit_size = 8,
5964         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
5965         .mask_operand = {
5966                 (BNXT_ULP_HF10_IDX_SVIF_INDEX >> 8) & 0xff,
5967                 BNXT_ULP_HF10_IDX_SVIF_INDEX & 0xff,
5968                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
5969                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
5970         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
5971         .spec_operand = {
5972                 (BNXT_ULP_HF10_IDX_SVIF_INDEX >> 8) & 0xff,
5973                 BNXT_ULP_HF10_IDX_SVIF_INDEX & 0xff,
5974                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
5975                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
5976         },
5977         {
5978         .description = "sparif",
5979         .field_bit_size = 4,
5980         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5981         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5982         },
5983         {
5984         .description = "tl2_ivlan_vid",
5985         .field_bit_size = 12,
5986         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5987         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5988         },
5989         {
5990         .description = "tl2_ovlan_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 = "mac1_tl2_dst",
5997         .field_bit_size = 48,
5998         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5999         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6000         },
6001         {
6002         .description = "l2_num_vtags",
6003         .field_bit_size = 2,
6004         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6005         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6006         },
6007         {
6008         .description = "tl2_num_vtags",
6009         .field_bit_size = 2,
6010         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6011         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6012         },
6013         {
6014         .description = "tun_hdr_type",
6015         .field_bit_size = 4,
6016         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6017         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6018         },
6019         {
6020         .description = "key_type",
6021         .field_bit_size = 2,
6022         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6023         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6024         },
6025         {
6026         .description = "valid",
6027         .field_bit_size = 1,
6028         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
6029         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
6030                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
6031         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
6032         .spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
6033                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
6034         },
6035         /* class_tid: 10, wh_plus, table: profile_tcam_cache_0 */
6036         {
6037         .description = "recycle",
6038         .field_bit_size = 1,
6039         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6040         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6041         },
6042         {
6043         .description = "prof_func_id",
6044         .field_bit_size = 7,
6045         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6046         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
6047         .spec_operand = {
6048                 (BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID >> 8) & 0xff,
6049                 BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID & 0xff,
6050                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
6051                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
6052         },
6053         {
6054         .description = "class_tid",
6055         .field_bit_size = 8,
6056         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6057         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
6058         .spec_operand = {
6059                 (BNXT_ULP_REGFILE_INDEX_CLASS_TID >> 8) & 0xff,
6060                 BNXT_ULP_REGFILE_INDEX_CLASS_TID & 0xff,
6061                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
6062                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
6063         },
6064         /* class_tid: 10, wh_plus, table: profile_tcam_0 */
6065         {
6066         .description = "l4_hdr_is_udp_tcp",
6067         .field_bit_size = 1,
6068         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6069         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6070         },
6071         {
6072         .description = "l4_hdr_type",
6073         .field_bit_size = 4,
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 = {
6079                 BNXT_ULP_SYM_L4_HDR_TYPE_UDP,
6080                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
6081                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
6082         },
6083         {
6084         .description = "l4_hdr_error",
6085         .field_bit_size = 1,
6086         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
6087         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
6088                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
6089         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6090         },
6091         {
6092         .description = "l4_hdr_valid",
6093         .field_bit_size = 1,
6094         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
6095         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
6096                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
6097         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
6098         .spec_operand = {
6099                 BNXT_ULP_SYM_L4_HDR_VALID_YES,
6100                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
6101                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
6102         },
6103         {
6104         .description = "l3_ipv6_cmp_dst",
6105         .field_bit_size = 1,
6106         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6107         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6108         },
6109         {
6110         .description = "l3_ipv6_cmp_src",
6111         .field_bit_size = 1,
6112         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6113         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6114         },
6115         {
6116         .description = "l3_hdr_isIP",
6117         .field_bit_size = 1,
6118         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6119         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6120         },
6121         {
6122         .description = "l3_hdr_type",
6123         .field_bit_size = 4,
6124         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
6125         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
6126                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
6127         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
6128         .spec_operand = {
6129                 BNXT_ULP_SYM_L3_HDR_TYPE_IPV6,
6130                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
6131                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
6132         },
6133         {
6134         .description = "l3_hdr_error",
6135         .field_bit_size = 1,
6136         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
6137         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
6138                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
6139         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6140         },
6141         {
6142         .description = "l3_hdr_valid",
6143         .field_bit_size = 1,
6144         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
6145         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
6146                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
6147         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
6148         .spec_operand = {
6149                 BNXT_ULP_SYM_L3_HDR_VALID_YES,
6150                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
6151                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
6152         },
6153         {
6154         .description = "l2_two_vtags",
6155         .field_bit_size = 1,
6156         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6157         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6158         },
6159         {
6160         .description = "l2_vtag_present",
6161         .field_bit_size = 1,
6162         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6163         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6164         },
6165         {
6166         .description = "l2_uc_mc_bc",
6167         .field_bit_size = 2,
6168         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
6169         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
6170                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
6171         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6172         },
6173         {
6174         .description = "l2_hdr_type",
6175         .field_bit_size = 2,
6176         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
6177         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
6178                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
6179         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6180         },
6181         {
6182         .description = "l2_hdr_error",
6183         .field_bit_size = 1,
6184         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
6185         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
6186                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
6187         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6188         },
6189         {
6190         .description = "l2_hdr_valid",
6191         .field_bit_size = 1,
6192         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
6193         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
6194                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
6195         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
6196         .spec_operand = {
6197                 BNXT_ULP_SYM_L2_HDR_VALID_YES,
6198                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
6199                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
6200         },
6201         {
6202         .description = "tun_hdr_flags",
6203         .field_bit_size = 3,
6204         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6205         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6206         },
6207         {
6208         .description = "tun_hdr_type",
6209         .field_bit_size = 4,
6210         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6211         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6212         },
6213         {
6214         .description = "tun_hdr_error",
6215         .field_bit_size = 1,
6216         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6217         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6218         },
6219         {
6220         .description = "tun_hdr_valid",
6221         .field_bit_size = 1,
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 = "tl4_hdr_is_udp_tcp",
6229         .field_bit_size = 1,
6230         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6231         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6232         },
6233         {
6234         .description = "tl4_hdr_type",
6235         .field_bit_size = 4,
6236         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6237         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6238         },
6239         {
6240         .description = "tl4_hdr_error",
6241         .field_bit_size = 1,
6242         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6243         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6244         },
6245         {
6246         .description = "tl4_hdr_valid",
6247         .field_bit_size = 1,
6248         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
6249         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
6250                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
6251         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6252         },
6253         {
6254         .description = "tl3_ipv6_cmp_dst",
6255         .field_bit_size = 1,
6256         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6257         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6258         },
6259         {
6260         .description = "tl3_ipv6_cmp_src",
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 = "tl3_hdr_isIP",
6267         .field_bit_size = 1,
6268         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6269         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6270         },
6271         {
6272         .description = "tl3_hdr_type",
6273         .field_bit_size = 4,
6274         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6275         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6276         },
6277         {
6278         .description = "tl3_hdr_error",
6279         .field_bit_size = 1,
6280         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6281         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6282         },
6283         {
6284         .description = "tl3_hdr_valid",
6285         .field_bit_size = 1,
6286         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
6287         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
6288                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
6289         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6290         },
6291         {
6292         .description = "tl2_two_vtags",
6293         .field_bit_size = 1,
6294         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6295         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6296         },
6297         {
6298         .description = "tl2_vtag_present",
6299         .field_bit_size = 1,
6300         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6301         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6302         },
6303         {
6304         .description = "tl2_uc_mc_bc",
6305         .field_bit_size = 2,
6306         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6307         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6308         },
6309         {
6310         .description = "tl2_hdr_type",
6311         .field_bit_size = 2,
6312         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6313         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6314         },
6315         {
6316         .description = "tl2_hdr_valid",
6317         .field_bit_size = 1,
6318         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
6319         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
6320                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
6321         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6322         },
6323         {
6324         .description = "hrec_next",
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 = "reserved",
6331         .field_bit_size = 9,
6332         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6333         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6334         },
6335         {
6336         .description = "prof_func_id",
6337         .field_bit_size = 7,
6338         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
6339         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
6340                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
6341         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
6342         .spec_operand = {
6343                 (BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID >> 8) & 0xff,
6344                 BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID & 0xff,
6345                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
6346                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
6347         },
6348         {
6349         .description = "agg_error",
6350         .field_bit_size = 1,
6351         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6352         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6353         },
6354         {
6355         .description = "recycle_cnt",
6356         .field_bit_size = 2,
6357         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
6358         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
6359                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
6360         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6361         },
6362         {
6363         .description = "pkt_type_0",
6364         .field_bit_size = 2,
6365         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6366         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6367         },
6368         {
6369         .description = "pkt_type_1",
6370         .field_bit_size = 2,
6371         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
6372         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
6373                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
6374         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6375         },
6376         {
6377         .description = "valid",
6378         .field_bit_size = 1,
6379         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
6380         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
6381                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
6382         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
6383         .spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
6384                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
6385         },
6386         /* class_tid: 10, wh_plus, table: ext_em_0 */
6387         {
6388         .description = "spare",
6389         .field_bit_size = 59,
6390         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6391         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6392         },
6393         {
6394         .description = "local_cos",
6395         .field_bit_size = 3,
6396         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6397         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6398         },
6399         {
6400         .description = "l4_dst_port",
6401         .field_bit_size = 16,
6402         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6403         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
6404         .spec_operand = {
6405                 (BNXT_ULP_HF10_IDX_O_UDP_DST_PORT >> 8) & 0xff,
6406                 BNXT_ULP_HF10_IDX_O_UDP_DST_PORT & 0xff,
6407                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
6408                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
6409         },
6410         {
6411         .description = "l4_src_port",
6412         .field_bit_size = 16,
6413         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6414         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
6415         .spec_operand = {
6416                 (BNXT_ULP_HF10_IDX_O_UDP_SRC_PORT >> 8) & 0xff,
6417                 BNXT_ULP_HF10_IDX_O_UDP_SRC_PORT & 0xff,
6418                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
6419                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
6420         },
6421         {
6422         .description = "ip_proto",
6423         .field_bit_size = 8,
6424         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6425         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
6426         .spec_operand = {
6427                 BNXT_ULP_SYM_IP_PROTO_UDP,
6428                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
6429                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
6430         },
6431         {
6432         .description = "ipv6_dst_addr",
6433         .field_bit_size = 128,
6434         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6435         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
6436         .spec_operand = {
6437                 (BNXT_ULP_HF10_IDX_O_IPV6_DST_ADDR >> 8) & 0xff,
6438                 BNXT_ULP_HF10_IDX_O_IPV6_DST_ADDR & 0xff,
6439                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
6440                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
6441         },
6442         {
6443         .description = "ipv6_src_addr",
6444         .field_bit_size = 128,
6445         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6446         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
6447         .spec_operand = {
6448                 (BNXT_ULP_HF10_IDX_O_IPV6_SRC_ADDR >> 8) & 0xff,
6449                 BNXT_ULP_HF10_IDX_O_IPV6_SRC_ADDR & 0xff,
6450                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
6451                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
6452         },
6453         {
6454         .description = "l2_src_mac",
6455         .field_bit_size = 48,
6456         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6457         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6458         },
6459         {
6460         .description = "tun_id",
6461         .field_bit_size = 24,
6462         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6463         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6464         },
6465         {
6466         .description = "l2_cntxt_id",
6467         .field_bit_size = 10,
6468         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6469         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
6470         .spec_operand = {
6471                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
6472                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
6473                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
6474                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
6475         },
6476         {
6477         .description = "em_profile_id",
6478         .field_bit_size = 8,
6479         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6480         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
6481         .spec_operand = {
6482                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
6483                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
6484                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
6485                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
6486         },
6487         /* class_tid: 10, wh_plus, table: int_em_0 */
6488         {
6489         .description = "spare",
6490         .field_bit_size = 3,
6491         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6492         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6493         },
6494         {
6495         .description = "local_cos",
6496         .field_bit_size = 3,
6497         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6498         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6499         },
6500         {
6501         .description = "l4_dst_port",
6502         .field_bit_size = 16,
6503         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6504         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
6505         .spec_operand = {
6506                 (BNXT_ULP_HF10_IDX_O_UDP_DST_PORT >> 8) & 0xff,
6507                 BNXT_ULP_HF10_IDX_O_UDP_DST_PORT & 0xff,
6508                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
6509                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
6510         },
6511         {
6512         .description = "l4_src_port",
6513         .field_bit_size = 16,
6514         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6515         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
6516         .spec_operand = {
6517                 (BNXT_ULP_HF10_IDX_O_UDP_SRC_PORT >> 8) & 0xff,
6518                 BNXT_ULP_HF10_IDX_O_UDP_SRC_PORT & 0xff,
6519                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
6520                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
6521         },
6522         {
6523         .description = "ip_proto",
6524         .field_bit_size = 8,
6525         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6526         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
6527         .spec_operand = {
6528                 BNXT_ULP_SYM_IP_PROTO_UDP,
6529                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
6530                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
6531         },
6532         {
6533         .description = "ipv6_dst_addr",
6534         .field_bit_size = 128,
6535         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6536         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
6537         .spec_operand = {
6538                 (BNXT_ULP_HF10_IDX_O_IPV6_DST_ADDR >> 8) & 0xff,
6539                 BNXT_ULP_HF10_IDX_O_IPV6_DST_ADDR & 0xff,
6540                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
6541                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
6542         },
6543         {
6544         .description = "ipv6_src_addr",
6545         .field_bit_size = 128,
6546         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6547         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
6548         .spec_operand = {
6549                 (BNXT_ULP_HF10_IDX_O_IPV6_SRC_ADDR >> 8) & 0xff,
6550                 BNXT_ULP_HF10_IDX_O_IPV6_SRC_ADDR & 0xff,
6551                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
6552                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
6553         },
6554         {
6555         .description = "l2_src_mac",
6556         .field_bit_size = 48,
6557         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6558         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6559         },
6560         {
6561         .description = "tun_id",
6562         .field_bit_size = 24,
6563         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6564         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6565         },
6566         {
6567         .description = "l2_cntxt_id",
6568         .field_bit_size = 10,
6569         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6570         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
6571         .spec_operand = {
6572                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
6573                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
6574                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
6575                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
6576         },
6577         {
6578         .description = "em_profile_id",
6579         .field_bit_size = 8,
6580         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6581         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
6582         .spec_operand = {
6583                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
6584                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
6585                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
6586                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
6587         },
6588         /* class_tid: 11, wh_plus, table: l2_cntxt_cache_0 */
6589         {
6590         .description = "svif",
6591         .field_bit_size = 8,
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_HF11_IDX_SVIF_INDEX >> 8) & 0xff,
6596                 BNXT_ULP_HF11_IDX_SVIF_INDEX & 0xff,
6597                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
6598                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
6599         },
6600         /* class_tid: 11, wh_plus, table: l2_cntxt_tcam_0 */
6601         {
6602         .description = "l2_ivlan_vid",
6603         .field_bit_size = 12,
6604         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6605         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6606         },
6607         {
6608         .description = "l2_ovlan_vid",
6609         .field_bit_size = 12,
6610         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6611         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6612         },
6613         {
6614         .description = "mac0_l2_dst",
6615         .field_bit_size = 48,
6616         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6617         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6618         },
6619         {
6620         .description = "svif",
6621         .field_bit_size = 8,
6622         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
6623         .mask_operand = {
6624                 (BNXT_ULP_HF11_IDX_SVIF_INDEX >> 8) & 0xff,
6625                 BNXT_ULP_HF11_IDX_SVIF_INDEX & 0xff,
6626                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
6627                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
6628         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
6629         .spec_operand = {
6630                 (BNXT_ULP_HF11_IDX_SVIF_INDEX >> 8) & 0xff,
6631                 BNXT_ULP_HF11_IDX_SVIF_INDEX & 0xff,
6632                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
6633                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
6634         },
6635         {
6636         .description = "sparif",
6637         .field_bit_size = 4,
6638         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6639         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6640         },
6641         {
6642         .description = "tl2_ivlan_vid",
6643         .field_bit_size = 12,
6644         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6645         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6646         },
6647         {
6648         .description = "tl2_ovlan_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 = "mac1_tl2_dst",
6655         .field_bit_size = 48,
6656         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6657         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6658         },
6659         {
6660         .description = "l2_num_vtags",
6661         .field_bit_size = 2,
6662         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6663         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6664         },
6665         {
6666         .description = "tl2_num_vtags",
6667         .field_bit_size = 2,
6668         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6669         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6670         },
6671         {
6672         .description = "tun_hdr_type",
6673         .field_bit_size = 4,
6674         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6675         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6676         },
6677         {
6678         .description = "key_type",
6679         .field_bit_size = 2,
6680         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6681         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6682         },
6683         {
6684         .description = "valid",
6685         .field_bit_size = 1,
6686         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
6687         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
6688                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
6689         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
6690         .spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
6691                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
6692         },
6693         /* class_tid: 11, wh_plus, table: profile_tcam_cache_0 */
6694         {
6695         .description = "recycle",
6696         .field_bit_size = 1,
6697         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6698         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6699         },
6700         {
6701         .description = "prof_func_id",
6702         .field_bit_size = 7,
6703         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6704         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
6705         .spec_operand = {
6706                 (BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID >> 8) & 0xff,
6707                 BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID & 0xff,
6708                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
6709                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
6710         },
6711         {
6712         .description = "class_tid",
6713         .field_bit_size = 8,
6714         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6715         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
6716         .spec_operand = {
6717                 (BNXT_ULP_REGFILE_INDEX_CLASS_TID >> 8) & 0xff,
6718                 BNXT_ULP_REGFILE_INDEX_CLASS_TID & 0xff,
6719                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
6720                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
6721         },
6722         /* class_tid: 11, wh_plus, table: profile_tcam_0 */
6723         {
6724         .description = "l4_hdr_is_udp_tcp",
6725         .field_bit_size = 1,
6726         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6727         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6728         },
6729         {
6730         .description = "l4_hdr_type",
6731         .field_bit_size = 4,
6732         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
6733         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
6734                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
6735         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6736         },
6737         {
6738         .description = "l4_hdr_error",
6739         .field_bit_size = 1,
6740         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
6741         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
6742                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
6743         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6744         },
6745         {
6746         .description = "l4_hdr_valid",
6747         .field_bit_size = 1,
6748         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
6749         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
6750                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
6751         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
6752         .spec_operand = {
6753                 BNXT_ULP_SYM_L4_HDR_VALID_YES,
6754                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
6755                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
6756         },
6757         {
6758         .description = "l3_ipv6_cmp_dst",
6759         .field_bit_size = 1,
6760         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6761         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6762         },
6763         {
6764         .description = "l3_ipv6_cmp_src",
6765         .field_bit_size = 1,
6766         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6767         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6768         },
6769         {
6770         .description = "l3_hdr_isIP",
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 = "l3_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_CONSTANT,
6782         .spec_operand = {
6783                 BNXT_ULP_SYM_L3_HDR_TYPE_IPV6,
6784                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
6785                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
6786         },
6787         {
6788         .description = "l3_hdr_error",
6789         .field_bit_size = 1,
6790         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
6791         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
6792                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
6793         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6794         },
6795         {
6796         .description = "l3_hdr_valid",
6797         .field_bit_size = 1,
6798         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
6799         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
6800                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
6801         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
6802         .spec_operand = {
6803                 BNXT_ULP_SYM_L3_HDR_VALID_YES,
6804                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
6805                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
6806         },
6807         {
6808         .description = "l2_two_vtags",
6809         .field_bit_size = 1,
6810         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6811         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6812         },
6813         {
6814         .description = "l2_vtag_present",
6815         .field_bit_size = 1,
6816         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6817         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6818         },
6819         {
6820         .description = "l2_uc_mc_bc",
6821         .field_bit_size = 2,
6822         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
6823         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
6824                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
6825         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6826         },
6827         {
6828         .description = "l2_hdr_type",
6829         .field_bit_size = 2,
6830         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
6831         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
6832                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
6833         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6834         },
6835         {
6836         .description = "l2_hdr_error",
6837         .field_bit_size = 1,
6838         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
6839         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
6840                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
6841         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6842         },
6843         {
6844         .description = "l2_hdr_valid",
6845         .field_bit_size = 1,
6846         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
6847         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
6848                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
6849         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
6850         .spec_operand = {
6851                 BNXT_ULP_SYM_L2_HDR_VALID_YES,
6852                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
6853                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
6854         },
6855         {
6856         .description = "tun_hdr_flags",
6857         .field_bit_size = 3,
6858         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6859         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6860         },
6861         {
6862         .description = "tun_hdr_type",
6863         .field_bit_size = 4,
6864         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6865         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6866         },
6867         {
6868         .description = "tun_hdr_error",
6869         .field_bit_size = 1,
6870         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6871         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6872         },
6873         {
6874         .description = "tun_hdr_valid",
6875         .field_bit_size = 1,
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 = "tl4_hdr_is_udp_tcp",
6883         .field_bit_size = 1,
6884         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6885         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6886         },
6887         {
6888         .description = "tl4_hdr_type",
6889         .field_bit_size = 4,
6890         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6891         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6892         },
6893         {
6894         .description = "tl4_hdr_error",
6895         .field_bit_size = 1,
6896         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6897         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6898         },
6899         {
6900         .description = "tl4_hdr_valid",
6901         .field_bit_size = 1,
6902         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
6903         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
6904                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
6905         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6906         },
6907         {
6908         .description = "tl3_ipv6_cmp_dst",
6909         .field_bit_size = 1,
6910         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6911         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6912         },
6913         {
6914         .description = "tl3_ipv6_cmp_src",
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 = "tl3_hdr_isIP",
6921         .field_bit_size = 1,
6922         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6923         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6924         },
6925         {
6926         .description = "tl3_hdr_type",
6927         .field_bit_size = 4,
6928         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6929         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6930         },
6931         {
6932         .description = "tl3_hdr_error",
6933         .field_bit_size = 1,
6934         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6935         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6936         },
6937         {
6938         .description = "tl3_hdr_valid",
6939         .field_bit_size = 1,
6940         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
6941         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
6942                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
6943         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6944         },
6945         {
6946         .description = "tl2_two_vtags",
6947         .field_bit_size = 1,
6948         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6949         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6950         },
6951         {
6952         .description = "tl2_vtag_present",
6953         .field_bit_size = 1,
6954         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6955         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6956         },
6957         {
6958         .description = "tl2_uc_mc_bc",
6959         .field_bit_size = 2,
6960         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6961         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6962         },
6963         {
6964         .description = "tl2_hdr_type",
6965         .field_bit_size = 2,
6966         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6967         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6968         },
6969         {
6970         .description = "tl2_hdr_valid",
6971         .field_bit_size = 1,
6972         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
6973         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
6974                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
6975         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6976         },
6977         {
6978         .description = "hrec_next",
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 = "reserved",
6985         .field_bit_size = 9,
6986         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6987         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6988         },
6989         {
6990         .description = "prof_func_id",
6991         .field_bit_size = 7,
6992         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
6993         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
6994                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
6995         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
6996         .spec_operand = {
6997                 (BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID >> 8) & 0xff,
6998                 BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID & 0xff,
6999                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
7000                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
7001         },
7002         {
7003         .description = "agg_error",
7004         .field_bit_size = 1,
7005         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7006         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7007         },
7008         {
7009         .description = "recycle_cnt",
7010         .field_bit_size = 2,
7011         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
7012         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
7013                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
7014         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7015         },
7016         {
7017         .description = "pkt_type_0",
7018         .field_bit_size = 2,
7019         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7020         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7021         },
7022         {
7023         .description = "pkt_type_1",
7024         .field_bit_size = 2,
7025         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
7026         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
7027                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
7028         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7029         },
7030         {
7031         .description = "valid",
7032         .field_bit_size = 1,
7033         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
7034         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
7035                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
7036         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
7037         .spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
7038                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
7039         },
7040         /* class_tid: 11, wh_plus, table: ext_em_0 */
7041         {
7042         .description = "spare",
7043         .field_bit_size = 59,
7044         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7045         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7046         },
7047         {
7048         .description = "local_cos",
7049         .field_bit_size = 3,
7050         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7051         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7052         },
7053         {
7054         .description = "l4_dst_port",
7055         .field_bit_size = 16,
7056         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7057         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
7058         .spec_operand = {
7059                 (BNXT_ULP_HF11_IDX_O_TCP_DST_PORT >> 8) & 0xff,
7060                 BNXT_ULP_HF11_IDX_O_TCP_DST_PORT & 0xff,
7061                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
7062                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
7063         },
7064         {
7065         .description = "l4_src_port",
7066         .field_bit_size = 16,
7067         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7068         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
7069         .spec_operand = {
7070                 (BNXT_ULP_HF11_IDX_O_TCP_SRC_PORT >> 8) & 0xff,
7071                 BNXT_ULP_HF11_IDX_O_TCP_SRC_PORT & 0xff,
7072                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
7073                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
7074         },
7075         {
7076         .description = "ip_proto",
7077         .field_bit_size = 8,
7078         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7079         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
7080         .spec_operand = {
7081                 BNXT_ULP_SYM_IP_PROTO_TCP,
7082                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
7083                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
7084         },
7085         {
7086         .description = "ipv6_dst_addr",
7087         .field_bit_size = 128,
7088         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7089         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
7090         .spec_operand = {
7091                 (BNXT_ULP_HF11_IDX_O_IPV6_DST_ADDR >> 8) & 0xff,
7092                 BNXT_ULP_HF11_IDX_O_IPV6_DST_ADDR & 0xff,
7093                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
7094                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
7095         },
7096         {
7097         .description = "ipv6_src_addr",
7098         .field_bit_size = 128,
7099         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7100         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
7101         .spec_operand = {
7102                 (BNXT_ULP_HF11_IDX_O_IPV6_SRC_ADDR >> 8) & 0xff,
7103                 BNXT_ULP_HF11_IDX_O_IPV6_SRC_ADDR & 0xff,
7104                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
7105                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
7106         },
7107         {
7108         .description = "l2_src_mac",
7109         .field_bit_size = 48,
7110         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7111         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7112         },
7113         {
7114         .description = "tun_id",
7115         .field_bit_size = 24,
7116         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7117         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7118         },
7119         {
7120         .description = "l2_cntxt_id",
7121         .field_bit_size = 10,
7122         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7123         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
7124         .spec_operand = {
7125                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
7126                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
7127                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
7128                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
7129         },
7130         {
7131         .description = "em_profile_id",
7132         .field_bit_size = 8,
7133         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7134         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
7135         .spec_operand = {
7136                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
7137                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
7138                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
7139                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
7140         },
7141         /* class_tid: 11, wh_plus, table: int_em_0 */
7142         {
7143         .description = "spare",
7144         .field_bit_size = 3,
7145         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7146         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7147         },
7148         {
7149         .description = "local_cos",
7150         .field_bit_size = 3,
7151         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7152         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7153         },
7154         {
7155         .description = "l4_dst_port",
7156         .field_bit_size = 16,
7157         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7158         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
7159         .spec_operand = {
7160                 (BNXT_ULP_HF11_IDX_O_TCP_DST_PORT >> 8) & 0xff,
7161                 BNXT_ULP_HF11_IDX_O_TCP_DST_PORT & 0xff,
7162                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
7163                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
7164         },
7165         {
7166         .description = "l4_src_port",
7167         .field_bit_size = 16,
7168         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7169         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
7170         .spec_operand = {
7171                 (BNXT_ULP_HF11_IDX_O_TCP_SRC_PORT >> 8) & 0xff,
7172                 BNXT_ULP_HF11_IDX_O_TCP_SRC_PORT & 0xff,
7173                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
7174                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
7175         },
7176         {
7177         .description = "ip_proto",
7178         .field_bit_size = 8,
7179         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7180         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
7181         .spec_operand = {
7182                 BNXT_ULP_SYM_IP_PROTO_TCP,
7183                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
7184                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
7185         },
7186         {
7187         .description = "ipv6_dst_addr",
7188         .field_bit_size = 128,
7189         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7190         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
7191         .spec_operand = {
7192                 (BNXT_ULP_HF11_IDX_O_IPV6_DST_ADDR >> 8) & 0xff,
7193                 BNXT_ULP_HF11_IDX_O_IPV6_DST_ADDR & 0xff,
7194                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
7195                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
7196         },
7197         {
7198         .description = "ipv6_src_addr",
7199         .field_bit_size = 128,
7200         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7201         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
7202         .spec_operand = {
7203                 (BNXT_ULP_HF11_IDX_O_IPV6_SRC_ADDR >> 8) & 0xff,
7204                 BNXT_ULP_HF11_IDX_O_IPV6_SRC_ADDR & 0xff,
7205                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
7206                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
7207         },
7208         {
7209         .description = "l2_src_mac",
7210         .field_bit_size = 48,
7211         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7212         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7213         },
7214         {
7215         .description = "tun_id",
7216         .field_bit_size = 24,
7217         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7218         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7219         },
7220         {
7221         .description = "l2_cntxt_id",
7222         .field_bit_size = 10,
7223         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7224         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
7225         .spec_operand = {
7226                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
7227                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
7228                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
7229                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
7230         },
7231         {
7232         .description = "em_profile_id",
7233         .field_bit_size = 8,
7234         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7235         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
7236         .spec_operand = {
7237                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
7238                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
7239                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
7240                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
7241         },
7242         /* class_tid: 12, wh_plus, table: l2_cntxt_tcam_0 */
7243         {
7244         .description = "l2_ivlan_vid",
7245         .field_bit_size = 12,
7246         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
7247         .mask_operand = {
7248                 (BNXT_ULP_HF12_IDX_OO_VLAN_VID >> 8) & 0xff,
7249                 BNXT_ULP_HF12_IDX_OO_VLAN_VID & 0xff,
7250                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
7251                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
7252         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
7253         .spec_operand = {
7254                 (BNXT_ULP_HF12_IDX_OO_VLAN_VID >> 8) & 0xff,
7255                 BNXT_ULP_HF12_IDX_OO_VLAN_VID & 0xff,
7256                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
7257                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
7258         },
7259         {
7260         .description = "l2_ovlan_vid",
7261         .field_bit_size = 12,
7262         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7263         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7264         },
7265         {
7266         .description = "mac0_l2_addr",
7267         .field_bit_size = 48,
7268         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
7269         .mask_operand = {
7270                 (BNXT_ULP_HF12_IDX_O_ETH_DMAC >> 8) & 0xff,
7271                 BNXT_ULP_HF12_IDX_O_ETH_DMAC & 0xff,
7272                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
7273                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
7274         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
7275         .spec_operand = {
7276                 (BNXT_ULP_HF12_IDX_O_ETH_DMAC >> 8) & 0xff,
7277                 BNXT_ULP_HF12_IDX_O_ETH_DMAC & 0xff,
7278                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
7279                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
7280         },
7281         {
7282         .description = "svif",
7283         .field_bit_size = 8,
7284         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
7285         .mask_operand = {
7286                 (BNXT_ULP_HF12_IDX_SVIF_INDEX >> 8) & 0xff,
7287                 BNXT_ULP_HF12_IDX_SVIF_INDEX & 0xff,
7288                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
7289                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
7290         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
7291         .spec_operand = {
7292                 (BNXT_ULP_HF12_IDX_SVIF_INDEX >> 8) & 0xff,
7293                 BNXT_ULP_HF12_IDX_SVIF_INDEX & 0xff,
7294                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
7295                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
7296         },
7297         {
7298         .description = "sparif",
7299         .field_bit_size = 4,
7300         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7301         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7302         },
7303         {
7304         .description = "tl2_ivlan_vid",
7305         .field_bit_size = 12,
7306         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7307         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7308         },
7309         {
7310         .description = "tl2_ovlan_vid",
7311         .field_bit_size = 12,
7312         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7313         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7314         },
7315         {
7316         .description = "mac1_tl2_addr",
7317         .field_bit_size = 48,
7318         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7319         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7320         },
7321         {
7322         .description = "l2_num_vtags",
7323         .field_bit_size = 2,
7324         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
7325         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
7326                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
7327         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,
7328         .spec_operand = {
7329                 (BNXT_ULP_CF_IDX_O_VTAG_NUM >> 8) & 0xff,
7330                 BNXT_ULP_CF_IDX_O_VTAG_NUM & 0xff,
7331                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
7332                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
7333         },
7334         {
7335         .description = "tl2_num_vtags",
7336         .field_bit_size = 2,
7337         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7338         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7339         },
7340         {
7341         .description = "tun_hdr_type",
7342         .field_bit_size = 4,
7343         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7344         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7345         },
7346         {
7347         .description = "key_type",
7348         .field_bit_size = 2,
7349         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
7350         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
7351                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
7352         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7353         },
7354         {
7355         .description = "valid",
7356         .field_bit_size = 1,
7357         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
7358         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
7359                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
7360         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
7361         .spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
7362                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
7363         },
7364         /* class_tid: 12, wh_plus, table: profile_tcam_cache_0 */
7365         {
7366         .description = "recycle",
7367         .field_bit_size = 1,
7368         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7369         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7370         },
7371         {
7372         .description = "prof_func_id",
7373         .field_bit_size = 7,
7374         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7375         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
7376         .spec_operand = {
7377                 (BNXT_ULP_GLB_REGFILE_INDEX_L2_PROF_FUNC_ID >> 8) & 0xff,
7378                 BNXT_ULP_GLB_REGFILE_INDEX_L2_PROF_FUNC_ID & 0xff,
7379                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
7380                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
7381         },
7382         {
7383         .description = "class_tid",
7384         .field_bit_size = 8,
7385         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7386         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
7387         .spec_operand = {
7388                 (BNXT_ULP_REGFILE_INDEX_CLASS_TID >> 8) & 0xff,
7389                 BNXT_ULP_REGFILE_INDEX_CLASS_TID & 0xff,
7390                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
7391                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
7392         },
7393         /* class_tid: 12, wh_plus, table: profile_tcam_0 */
7394         {
7395         .description = "l4_hdr_is_udp_tcp",
7396         .field_bit_size = 1,
7397         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7398         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7399         },
7400         {
7401         .description = "l4_hdr_type",
7402         .field_bit_size = 4,
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 = {
7408                 BNXT_ULP_SYM_L4_HDR_TYPE_UDP,
7409                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
7410                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
7411         },
7412         {
7413         .description = "l4_hdr_error",
7414         .field_bit_size = 1,
7415         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
7416         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
7417                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
7418         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7419         },
7420         {
7421         .description = "l4_hdr_valid",
7422         .field_bit_size = 1,
7423         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
7424         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
7425                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
7426         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
7427         .spec_operand = {
7428                 BNXT_ULP_SYM_L4_HDR_VALID_YES,
7429                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
7430                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
7431         },
7432         {
7433         .description = "l3_ipv6_cmp_dst",
7434         .field_bit_size = 1,
7435         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7436         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7437         },
7438         {
7439         .description = "l3_ipv6_cmp_src",
7440         .field_bit_size = 1,
7441         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7442         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7443         },
7444         {
7445         .description = "l3_hdr_isIP",
7446         .field_bit_size = 1,
7447         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7448         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7449         },
7450         {
7451         .description = "l3_hdr_type",
7452         .field_bit_size = 4,
7453         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
7454         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
7455                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
7456         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7457         },
7458         {
7459         .description = "l3_hdr_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 = "l3_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_L3_HDR_VALID_YES,
7475                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
7476                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
7477         },
7478         {
7479         .description = "l2_two_vtags",
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 = "l2_vtag_present",
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 = "l2_uc_mc_bc",
7492         .field_bit_size = 2,
7493         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
7494         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
7495                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
7496         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7497         },
7498         {
7499         .description = "l2_hdr_type",
7500         .field_bit_size = 2,
7501         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
7502         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
7503                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
7504         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7505         },
7506         {
7507         .description = "l2_hdr_error",
7508         .field_bit_size = 1,
7509         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
7510         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
7511                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
7512         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7513         },
7514         {
7515         .description = "l2_hdr_valid",
7516         .field_bit_size = 1,
7517         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
7518         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
7519                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
7520         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
7521         .spec_operand = {
7522                 BNXT_ULP_SYM_L2_HDR_VALID_YES,
7523                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
7524                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
7525         },
7526         {
7527         .description = "tun_hdr_flags",
7528         .field_bit_size = 3,
7529         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7530         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7531         },
7532         {
7533         .description = "tun_hdr_type",
7534         .field_bit_size = 4,
7535         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7536         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7537         },
7538         {
7539         .description = "tun_hdr_error",
7540         .field_bit_size = 1,
7541         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7542         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7543         },
7544         {
7545         .description = "tun_hdr_valid",
7546         .field_bit_size = 1,
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 = "tl4_hdr_is_udp_tcp",
7554         .field_bit_size = 1,
7555         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7556         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7557         },
7558         {
7559         .description = "tl4_hdr_type",
7560         .field_bit_size = 4,
7561         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7562         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7563         },
7564         {
7565         .description = "tl4_hdr_error",
7566         .field_bit_size = 1,
7567         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7568         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7569         },
7570         {
7571         .description = "tl4_hdr_valid",
7572         .field_bit_size = 1,
7573         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
7574         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
7575                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
7576         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7577         },
7578         {
7579         .description = "tl3_ipv6_cmp_dst",
7580         .field_bit_size = 1,
7581         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7582         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7583         },
7584         {
7585         .description = "tl3_ipv6_cmp_src",
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 = "tl3_hdr_isIP",
7592         .field_bit_size = 1,
7593         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7594         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7595         },
7596         {
7597         .description = "tl3_hdr_type",
7598         .field_bit_size = 4,
7599         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7600         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7601         },
7602         {
7603         .description = "tl3_hdr_error",
7604         .field_bit_size = 1,
7605         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7606         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7607         },
7608         {
7609         .description = "tl3_hdr_valid",
7610         .field_bit_size = 1,
7611         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
7612         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
7613                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
7614         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7615         },
7616         {
7617         .description = "tl2_two_vtags",
7618         .field_bit_size = 1,
7619         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7620         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7621         },
7622         {
7623         .description = "tl2_vtag_present",
7624         .field_bit_size = 1,
7625         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7626         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7627         },
7628         {
7629         .description = "tl2_uc_mc_bc",
7630         .field_bit_size = 2,
7631         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7632         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7633         },
7634         {
7635         .description = "tl2_hdr_type",
7636         .field_bit_size = 2,
7637         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7638         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7639         },
7640         {
7641         .description = "tl2_hdr_valid",
7642         .field_bit_size = 1,
7643         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
7644         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
7645                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
7646         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7647         },
7648         {
7649         .description = "hrec_next",
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 = "reserved",
7656         .field_bit_size = 9,
7657         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7658         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7659         },
7660         {
7661         .description = "prof_func_id",
7662         .field_bit_size = 7,
7663         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
7664         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
7665                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
7666         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
7667         .spec_operand = {
7668                 (BNXT_ULP_GLB_REGFILE_INDEX_L2_PROF_FUNC_ID >> 8) & 0xff,
7669                 BNXT_ULP_GLB_REGFILE_INDEX_L2_PROF_FUNC_ID & 0xff,
7670                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
7671                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
7672         },
7673         {
7674         .description = "agg_error",
7675         .field_bit_size = 1,
7676         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7677         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7678         },
7679         {
7680         .description = "recycle_cnt",
7681         .field_bit_size = 2,
7682         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
7683         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
7684                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
7685         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7686         },
7687         {
7688         .description = "pkt_type_0",
7689         .field_bit_size = 2,
7690         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7691         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7692         },
7693         {
7694         .description = "pkt_type_1",
7695         .field_bit_size = 2,
7696         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
7697         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
7698                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
7699         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7700         },
7701         {
7702         .description = "valid",
7703         .field_bit_size = 1,
7704         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
7705         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
7706                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
7707         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
7708         .spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
7709                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
7710         },
7711         /* class_tid: 12, wh_plus, table: ext_em_0 */
7712         {
7713         .description = "spare",
7714         .field_bit_size = 251,
7715         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7716         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7717         },
7718         {
7719         .description = "local_cos",
7720         .field_bit_size = 3,
7721         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7722         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7723         },
7724         {
7725         .description = "l4_dst_port",
7726         .field_bit_size = 16,
7727         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7728         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
7729         .spec_operand = {
7730                 (BNXT_ULP_HF12_IDX_O_UDP_DST_PORT >> 8) & 0xff,
7731                 BNXT_ULP_HF12_IDX_O_UDP_DST_PORT & 0xff,
7732                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
7733                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
7734         },
7735         {
7736         .description = "l4_src_port",
7737         .field_bit_size = 16,
7738         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7739         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
7740         .spec_operand = {
7741                 (BNXT_ULP_HF12_IDX_O_UDP_SRC_PORT >> 8) & 0xff,
7742                 BNXT_ULP_HF12_IDX_O_UDP_SRC_PORT & 0xff,
7743                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
7744                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
7745         },
7746         {
7747         .description = "ip_proto",
7748         .field_bit_size = 8,
7749         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7750         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
7751         .spec_operand = {
7752                 BNXT_ULP_SYM_IP_PROTO_UDP,
7753                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
7754                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
7755         },
7756         {
7757         .description = "ipv4_dst_addr",
7758         .field_bit_size = 32,
7759         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7760         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
7761         .spec_operand = {
7762                 (BNXT_ULP_HF12_IDX_O_IPV4_DST_ADDR >> 8) & 0xff,
7763                 BNXT_ULP_HF12_IDX_O_IPV4_DST_ADDR & 0xff,
7764                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
7765                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
7766         },
7767         {
7768         .description = "ipv4_src_addr",
7769         .field_bit_size = 32,
7770         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7771         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
7772         .spec_operand = {
7773                 (BNXT_ULP_HF12_IDX_O_IPV4_SRC_ADDR >> 8) & 0xff,
7774                 BNXT_ULP_HF12_IDX_O_IPV4_SRC_ADDR & 0xff,
7775                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
7776                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
7777         },
7778         {
7779         .description = "l2_src_mac",
7780         .field_bit_size = 48,
7781         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7782         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7783         },
7784         {
7785         .description = "tun_id",
7786         .field_bit_size = 24,
7787         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7788         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7789         },
7790         {
7791         .description = "l2_cntxt_id",
7792         .field_bit_size = 10,
7793         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7794         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
7795         .spec_operand = {
7796                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
7797                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
7798                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
7799                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
7800         },
7801         {
7802         .description = "em_profile_id",
7803         .field_bit_size = 8,
7804         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7805         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
7806         .spec_operand = {
7807                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
7808                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
7809                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
7810                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
7811         },
7812         /* class_tid: 12, wh_plus, table: int_em_0 */
7813         {
7814         .description = "spare",
7815         .field_bit_size = 3,
7816         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7817         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7818         },
7819         {
7820         .description = "local_cos",
7821         .field_bit_size = 3,
7822         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7823         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7824         },
7825         {
7826         .description = "l4_dst_port",
7827         .field_bit_size = 16,
7828         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7829         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
7830         .spec_operand = {
7831                 (BNXT_ULP_HF12_IDX_O_UDP_DST_PORT >> 8) & 0xff,
7832                 BNXT_ULP_HF12_IDX_O_UDP_DST_PORT & 0xff,
7833                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
7834                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
7835         },
7836         {
7837         .description = "l4_src_port",
7838         .field_bit_size = 16,
7839         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7840         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
7841         .spec_operand = {
7842                 (BNXT_ULP_HF12_IDX_O_UDP_SRC_PORT >> 8) & 0xff,
7843                 BNXT_ULP_HF12_IDX_O_UDP_SRC_PORT & 0xff,
7844                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
7845                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
7846         },
7847         {
7848         .description = "ip_proto",
7849         .field_bit_size = 8,
7850         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7851         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
7852         .spec_operand = {
7853                 BNXT_ULP_SYM_IP_PROTO_UDP,
7854                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
7855                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
7856         },
7857         {
7858         .description = "ipv4_dst_addr",
7859         .field_bit_size = 32,
7860         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7861         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
7862         .spec_operand = {
7863                 (BNXT_ULP_HF12_IDX_O_IPV4_DST_ADDR >> 8) & 0xff,
7864                 BNXT_ULP_HF12_IDX_O_IPV4_DST_ADDR & 0xff,
7865                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
7866                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
7867         },
7868         {
7869         .description = "ipv4_src_addr",
7870         .field_bit_size = 32,
7871         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7872         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
7873         .spec_operand = {
7874                 (BNXT_ULP_HF12_IDX_O_IPV4_SRC_ADDR >> 8) & 0xff,
7875                 BNXT_ULP_HF12_IDX_O_IPV4_SRC_ADDR & 0xff,
7876                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
7877                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
7878         },
7879         {
7880         .description = "l2_src_mac",
7881         .field_bit_size = 48,
7882         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7883         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7884         },
7885         {
7886         .description = "tun_id",
7887         .field_bit_size = 24,
7888         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7889         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7890         },
7891         {
7892         .description = "l2_cntxt_id",
7893         .field_bit_size = 10,
7894         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7895         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
7896         .spec_operand = {
7897                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
7898                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
7899                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
7900                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
7901         },
7902         {
7903         .description = "em_profile_id",
7904         .field_bit_size = 8,
7905         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7906         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
7907         .spec_operand = {
7908                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
7909                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
7910                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
7911                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
7912         },
7913         /* class_tid: 13, wh_plus, table: l2_cntxt_tcam_0 */
7914         {
7915         .description = "l2_ivlan_vid",
7916         .field_bit_size = 12,
7917         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
7918         .mask_operand = {
7919                 (BNXT_ULP_HF13_IDX_OO_VLAN_VID >> 8) & 0xff,
7920                 BNXT_ULP_HF13_IDX_OO_VLAN_VID & 0xff,
7921                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
7922                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
7923         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
7924         .spec_operand = {
7925                 (BNXT_ULP_HF13_IDX_OO_VLAN_VID >> 8) & 0xff,
7926                 BNXT_ULP_HF13_IDX_OO_VLAN_VID & 0xff,
7927                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
7928                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
7929         },
7930         {
7931         .description = "l2_ovlan_vid",
7932         .field_bit_size = 12,
7933         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7934         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7935         },
7936         {
7937         .description = "mac0_l2_addr",
7938         .field_bit_size = 48,
7939         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
7940         .mask_operand = {
7941                 (BNXT_ULP_HF13_IDX_O_ETH_DMAC >> 8) & 0xff,
7942                 BNXT_ULP_HF13_IDX_O_ETH_DMAC & 0xff,
7943                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
7944                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
7945         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
7946         .spec_operand = {
7947                 (BNXT_ULP_HF13_IDX_O_ETH_DMAC >> 8) & 0xff,
7948                 BNXT_ULP_HF13_IDX_O_ETH_DMAC & 0xff,
7949                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
7950                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
7951         },
7952         {
7953         .description = "svif",
7954         .field_bit_size = 8,
7955         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
7956         .mask_operand = {
7957                 (BNXT_ULP_HF13_IDX_SVIF_INDEX >> 8) & 0xff,
7958                 BNXT_ULP_HF13_IDX_SVIF_INDEX & 0xff,
7959                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
7960                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
7961         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
7962         .spec_operand = {
7963                 (BNXT_ULP_HF13_IDX_SVIF_INDEX >> 8) & 0xff,
7964                 BNXT_ULP_HF13_IDX_SVIF_INDEX & 0xff,
7965                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
7966                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
7967         },
7968         {
7969         .description = "sparif",
7970         .field_bit_size = 4,
7971         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7972         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7973         },
7974         {
7975         .description = "tl2_ivlan_vid",
7976         .field_bit_size = 12,
7977         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7978         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7979         },
7980         {
7981         .description = "tl2_ovlan_vid",
7982         .field_bit_size = 12,
7983         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7984         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7985         },
7986         {
7987         .description = "mac1_tl2_addr",
7988         .field_bit_size = 48,
7989         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7990         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7991         },
7992         {
7993         .description = "l2_num_vtags",
7994         .field_bit_size = 2,
7995         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
7996         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
7997                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
7998         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,
7999         .spec_operand = {
8000                 (BNXT_ULP_CF_IDX_O_VTAG_NUM >> 8) & 0xff,
8001                 BNXT_ULP_CF_IDX_O_VTAG_NUM & 0xff,
8002                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
8003                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
8004         },
8005         {
8006         .description = "tl2_num_vtags",
8007         .field_bit_size = 2,
8008         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8009         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8010         },
8011         {
8012         .description = "tun_hdr_type",
8013         .field_bit_size = 4,
8014         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8015         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8016         },
8017         {
8018         .description = "key_type",
8019         .field_bit_size = 2,
8020         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
8021         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
8022                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
8023         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8024         },
8025         {
8026         .description = "valid",
8027         .field_bit_size = 1,
8028         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
8029         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
8030                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
8031         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
8032         .spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
8033                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
8034         },
8035         /* class_tid: 13, wh_plus, table: profile_tcam_cache_0 */
8036         {
8037         .description = "recycle",
8038         .field_bit_size = 1,
8039         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8040         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8041         },
8042         {
8043         .description = "prof_func_id",
8044         .field_bit_size = 7,
8045         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8046         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
8047         .spec_operand = {
8048                 (BNXT_ULP_GLB_REGFILE_INDEX_L2_PROF_FUNC_ID >> 8) & 0xff,
8049                 BNXT_ULP_GLB_REGFILE_INDEX_L2_PROF_FUNC_ID & 0xff,
8050                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
8051                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
8052         },
8053         {
8054         .description = "class_tid",
8055         .field_bit_size = 8,
8056         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8057         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
8058         .spec_operand = {
8059                 (BNXT_ULP_REGFILE_INDEX_CLASS_TID >> 8) & 0xff,
8060                 BNXT_ULP_REGFILE_INDEX_CLASS_TID & 0xff,
8061                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
8062                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
8063         },
8064         /* class_tid: 13, wh_plus, table: profile_tcam_0 */
8065         {
8066         .description = "l4_hdr_is_udp_tcp",
8067         .field_bit_size = 1,
8068         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8069         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8070         },
8071         {
8072         .description = "l4_hdr_type",
8073         .field_bit_size = 4,
8074         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
8075         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
8076                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
8077         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8078         },
8079         {
8080         .description = "l4_hdr_error",
8081         .field_bit_size = 1,
8082         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
8083         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
8084                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
8085         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8086         },
8087         {
8088         .description = "l4_hdr_valid",
8089         .field_bit_size = 1,
8090         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
8091         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
8092                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
8093         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
8094         .spec_operand = {
8095                 BNXT_ULP_SYM_L4_HDR_VALID_YES,
8096                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
8097                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
8098         },
8099         {
8100         .description = "l3_ipv6_cmp_dst",
8101         .field_bit_size = 1,
8102         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8103         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8104         },
8105         {
8106         .description = "l3_ipv6_cmp_src",
8107         .field_bit_size = 1,
8108         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8109         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8110         },
8111         {
8112         .description = "l3_hdr_isIP",
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 = "l3_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 = "l3_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 = "l3_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_L3_HDR_VALID_YES,
8142                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
8143                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
8144         },
8145         {
8146         .description = "l2_two_vtags",
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 = "l2_vtag_present",
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 = "l2_uc_mc_bc",
8159         .field_bit_size = 2,
8160         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
8161         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
8162                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
8163         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8164         },
8165         {
8166         .description = "l2_hdr_type",
8167         .field_bit_size = 2,
8168         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
8169         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
8170                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
8171         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8172         },
8173         {
8174         .description = "l2_hdr_error",
8175         .field_bit_size = 1,
8176         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
8177         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
8178                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
8179         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8180         },
8181         {
8182         .description = "l2_hdr_valid",
8183         .field_bit_size = 1,
8184         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
8185         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
8186                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
8187         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
8188         .spec_operand = {
8189                 BNXT_ULP_SYM_L2_HDR_VALID_YES,
8190                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
8191                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
8192         },
8193         {
8194         .description = "tun_hdr_flags",
8195         .field_bit_size = 3,
8196         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8197         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8198         },
8199         {
8200         .description = "tun_hdr_type",
8201         .field_bit_size = 4,
8202         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8203         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8204         },
8205         {
8206         .description = "tun_hdr_error",
8207         .field_bit_size = 1,
8208         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8209         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8210         },
8211         {
8212         .description = "tun_hdr_valid",
8213         .field_bit_size = 1,
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 = "tl4_hdr_is_udp_tcp",
8221         .field_bit_size = 1,
8222         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8223         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8224         },
8225         {
8226         .description = "tl4_hdr_type",
8227         .field_bit_size = 4,
8228         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8229         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8230         },
8231         {
8232         .description = "tl4_hdr_error",
8233         .field_bit_size = 1,
8234         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8235         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8236         },
8237         {
8238         .description = "tl4_hdr_valid",
8239         .field_bit_size = 1,
8240         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
8241         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
8242                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
8243         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8244         },
8245         {
8246         .description = "tl3_ipv6_cmp_dst",
8247         .field_bit_size = 1,
8248         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8249         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8250         },
8251         {
8252         .description = "tl3_ipv6_cmp_src",
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 = "tl3_hdr_isIP",
8259         .field_bit_size = 1,
8260         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8261         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8262         },
8263         {
8264         .description = "tl3_hdr_type",
8265         .field_bit_size = 4,
8266         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8267         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8268         },
8269         {
8270         .description = "tl3_hdr_error",
8271         .field_bit_size = 1,
8272         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8273         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8274         },
8275         {
8276         .description = "tl3_hdr_valid",
8277         .field_bit_size = 1,
8278         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
8279         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
8280                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
8281         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8282         },
8283         {
8284         .description = "tl2_two_vtags",
8285         .field_bit_size = 1,
8286         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8287         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8288         },
8289         {
8290         .description = "tl2_vtag_present",
8291         .field_bit_size = 1,
8292         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8293         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8294         },
8295         {
8296         .description = "tl2_uc_mc_bc",
8297         .field_bit_size = 2,
8298         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8299         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8300         },
8301         {
8302         .description = "tl2_hdr_type",
8303         .field_bit_size = 2,
8304         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8305         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8306         },
8307         {
8308         .description = "tl2_hdr_valid",
8309         .field_bit_size = 1,
8310         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
8311         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
8312                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
8313         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8314         },
8315         {
8316         .description = "hrec_next",
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 = "reserved",
8323         .field_bit_size = 9,
8324         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8325         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8326         },
8327         {
8328         .description = "prof_func_id",
8329         .field_bit_size = 7,
8330         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
8331         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
8332                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
8333         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
8334         .spec_operand = {
8335                 (BNXT_ULP_GLB_REGFILE_INDEX_L2_PROF_FUNC_ID >> 8) & 0xff,
8336                 BNXT_ULP_GLB_REGFILE_INDEX_L2_PROF_FUNC_ID & 0xff,
8337                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
8338                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
8339         },
8340         {
8341         .description = "agg_error",
8342         .field_bit_size = 1,
8343         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8344         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8345         },
8346         {
8347         .description = "recycle_cnt",
8348         .field_bit_size = 2,
8349         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
8350         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
8351                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
8352         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8353         },
8354         {
8355         .description = "pkt_type_0",
8356         .field_bit_size = 2,
8357         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8358         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8359         },
8360         {
8361         .description = "pkt_type_1",
8362         .field_bit_size = 2,
8363         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
8364         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
8365                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
8366         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8367         },
8368         {
8369         .description = "valid",
8370         .field_bit_size = 1,
8371         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
8372         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
8373                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
8374         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
8375         .spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
8376                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
8377         },
8378         /* class_tid: 13, wh_plus, table: ext_em_0 */
8379         {
8380         .description = "spare",
8381         .field_bit_size = 251,
8382         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8383         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8384         },
8385         {
8386         .description = "local_cos",
8387         .field_bit_size = 3,
8388         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8389         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8390         },
8391         {
8392         .description = "l4_dst_port",
8393         .field_bit_size = 16,
8394         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8395         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
8396         .spec_operand = {
8397                 (BNXT_ULP_HF13_IDX_O_TCP_DST_PORT >> 8) & 0xff,
8398                 BNXT_ULP_HF13_IDX_O_TCP_DST_PORT & 0xff,
8399                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
8400                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
8401         },
8402         {
8403         .description = "l4_src_port",
8404         .field_bit_size = 16,
8405         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8406         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
8407         .spec_operand = {
8408                 (BNXT_ULP_HF13_IDX_O_TCP_SRC_PORT >> 8) & 0xff,
8409                 BNXT_ULP_HF13_IDX_O_TCP_SRC_PORT & 0xff,
8410                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
8411                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
8412         },
8413         {
8414         .description = "ip_proto",
8415         .field_bit_size = 8,
8416         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8417         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
8418         .spec_operand = {
8419                 BNXT_ULP_SYM_IP_PROTO_TCP,
8420                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
8421                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
8422         },
8423         {
8424         .description = "ipv4_dst_addr",
8425         .field_bit_size = 32,
8426         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8427         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
8428         .spec_operand = {
8429                 (BNXT_ULP_HF13_IDX_O_IPV4_DST_ADDR >> 8) & 0xff,
8430                 BNXT_ULP_HF13_IDX_O_IPV4_DST_ADDR & 0xff,
8431                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
8432                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
8433         },
8434         {
8435         .description = "ipv4_src_addr",
8436         .field_bit_size = 32,
8437         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8438         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
8439         .spec_operand = {
8440                 (BNXT_ULP_HF13_IDX_O_IPV4_SRC_ADDR >> 8) & 0xff,
8441                 BNXT_ULP_HF13_IDX_O_IPV4_SRC_ADDR & 0xff,
8442                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
8443                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
8444         },
8445         {
8446         .description = "l2_src_mac",
8447         .field_bit_size = 48,
8448         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8449         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8450         },
8451         {
8452         .description = "tun_id",
8453         .field_bit_size = 24,
8454         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8455         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8456         },
8457         {
8458         .description = "l2_cntxt_id",
8459         .field_bit_size = 10,
8460         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8461         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
8462         .spec_operand = {
8463                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
8464                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
8465                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
8466                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
8467         },
8468         {
8469         .description = "em_profile_id",
8470         .field_bit_size = 8,
8471         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8472         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
8473         .spec_operand = {
8474                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
8475                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
8476                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
8477                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
8478         },
8479         /* class_tid: 13, wh_plus, table: int_em_0 */
8480         {
8481         .description = "spare",
8482         .field_bit_size = 3,
8483         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8484         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8485         },
8486         {
8487         .description = "local_cos",
8488         .field_bit_size = 3,
8489         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8490         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8491         },
8492         {
8493         .description = "l4_dst_port",
8494         .field_bit_size = 16,
8495         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8496         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
8497         .spec_operand = {
8498                 (BNXT_ULP_HF13_IDX_O_TCP_DST_PORT >> 8) & 0xff,
8499                 BNXT_ULP_HF13_IDX_O_TCP_DST_PORT & 0xff,
8500                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
8501                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
8502         },
8503         {
8504         .description = "l4_src_port",
8505         .field_bit_size = 16,
8506         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8507         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
8508         .spec_operand = {
8509                 (BNXT_ULP_HF13_IDX_O_TCP_SRC_PORT >> 8) & 0xff,
8510                 BNXT_ULP_HF13_IDX_O_TCP_SRC_PORT & 0xff,
8511                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
8512                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
8513         },
8514         {
8515         .description = "ip_proto",
8516         .field_bit_size = 8,
8517         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8518         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
8519         .spec_operand = {
8520                 BNXT_ULP_SYM_IP_PROTO_TCP,
8521                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
8522                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
8523         },
8524         {
8525         .description = "ipv4_dst_addr",
8526         .field_bit_size = 32,
8527         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8528         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
8529         .spec_operand = {
8530                 (BNXT_ULP_HF13_IDX_O_IPV4_DST_ADDR >> 8) & 0xff,
8531                 BNXT_ULP_HF13_IDX_O_IPV4_DST_ADDR & 0xff,
8532                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
8533                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
8534         },
8535         {
8536         .description = "ipv4_src_addr",
8537         .field_bit_size = 32,
8538         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8539         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
8540         .spec_operand = {
8541                 (BNXT_ULP_HF13_IDX_O_IPV4_SRC_ADDR >> 8) & 0xff,
8542                 BNXT_ULP_HF13_IDX_O_IPV4_SRC_ADDR & 0xff,
8543                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
8544                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
8545         },
8546         {
8547         .description = "l2_src_mac",
8548         .field_bit_size = 48,
8549         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8550         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8551         },
8552         {
8553         .description = "tun_id",
8554         .field_bit_size = 24,
8555         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8556         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8557         },
8558         {
8559         .description = "l2_cntxt_id",
8560         .field_bit_size = 10,
8561         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8562         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
8563         .spec_operand = {
8564                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
8565                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
8566                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
8567                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
8568         },
8569         {
8570         .description = "em_profile_id",
8571         .field_bit_size = 8,
8572         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8573         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
8574         .spec_operand = {
8575                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
8576                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
8577                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
8578                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
8579         },
8580         /* class_tid: 14, wh_plus, table: l2_cntxt_tcam_0 */
8581         {
8582         .description = "l2_ivlan_vid",
8583         .field_bit_size = 12,
8584         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
8585         .mask_operand = {
8586                 (BNXT_ULP_HF14_IDX_OO_VLAN_VID >> 8) & 0xff,
8587                 BNXT_ULP_HF14_IDX_OO_VLAN_VID & 0xff,
8588                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
8589                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
8590         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
8591         .spec_operand = {
8592                 (BNXT_ULP_HF14_IDX_OO_VLAN_VID >> 8) & 0xff,
8593                 BNXT_ULP_HF14_IDX_OO_VLAN_VID & 0xff,
8594                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
8595                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
8596         },
8597         {
8598         .description = "l2_ovlan_vid",
8599         .field_bit_size = 12,
8600         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8601         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8602         },
8603         {
8604         .description = "mac0_l2_addr",
8605         .field_bit_size = 48,
8606         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
8607         .mask_operand = {
8608                 (BNXT_ULP_HF14_IDX_O_ETH_DMAC >> 8) & 0xff,
8609                 BNXT_ULP_HF14_IDX_O_ETH_DMAC & 0xff,
8610                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
8611                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
8612         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
8613         .spec_operand = {
8614                 (BNXT_ULP_HF14_IDX_O_ETH_DMAC >> 8) & 0xff,
8615                 BNXT_ULP_HF14_IDX_O_ETH_DMAC & 0xff,
8616                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
8617                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
8618         },
8619         {
8620         .description = "svif",
8621         .field_bit_size = 8,
8622         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
8623         .mask_operand = {
8624                 (BNXT_ULP_HF14_IDX_SVIF_INDEX >> 8) & 0xff,
8625                 BNXT_ULP_HF14_IDX_SVIF_INDEX & 0xff,
8626                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
8627                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
8628         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
8629         .spec_operand = {
8630                 (BNXT_ULP_HF14_IDX_SVIF_INDEX >> 8) & 0xff,
8631                 BNXT_ULP_HF14_IDX_SVIF_INDEX & 0xff,
8632                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
8633                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
8634         },
8635         {
8636         .description = "sparif",
8637         .field_bit_size = 4,
8638         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8639         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8640         },
8641         {
8642         .description = "tl2_ivlan_vid",
8643         .field_bit_size = 12,
8644         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8645         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8646         },
8647         {
8648         .description = "tl2_ovlan_vid",
8649         .field_bit_size = 12,
8650         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8651         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8652         },
8653         {
8654         .description = "mac1_tl2_addr",
8655         .field_bit_size = 48,
8656         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8657         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8658         },
8659         {
8660         .description = "l2_num_vtags",
8661         .field_bit_size = 2,
8662         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
8663         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
8664                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
8665         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,
8666         .spec_operand = {
8667                 (BNXT_ULP_CF_IDX_O_VTAG_NUM >> 8) & 0xff,
8668                 BNXT_ULP_CF_IDX_O_VTAG_NUM & 0xff,
8669                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
8670                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
8671         },
8672         {
8673         .description = "tl2_num_vtags",
8674         .field_bit_size = 2,
8675         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8676         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8677         },
8678         {
8679         .description = "tun_hdr_type",
8680         .field_bit_size = 4,
8681         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8682         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8683         },
8684         {
8685         .description = "key_type",
8686         .field_bit_size = 2,
8687         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
8688         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
8689                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
8690         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8691         },
8692         {
8693         .description = "valid",
8694         .field_bit_size = 1,
8695         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
8696         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
8697                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
8698         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
8699         .spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
8700                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
8701         },
8702         /* class_tid: 14, wh_plus, table: profile_tcam_cache_0 */
8703         {
8704         .description = "recycle",
8705         .field_bit_size = 1,
8706         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8707         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8708         },
8709         {
8710         .description = "prof_func_id",
8711         .field_bit_size = 7,
8712         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8713         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
8714         .spec_operand = {
8715                 (BNXT_ULP_GLB_REGFILE_INDEX_L2_PROF_FUNC_ID >> 8) & 0xff,
8716                 BNXT_ULP_GLB_REGFILE_INDEX_L2_PROF_FUNC_ID & 0xff,
8717                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
8718                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
8719         },
8720         {
8721         .description = "class_tid",
8722         .field_bit_size = 8,
8723         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8724         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
8725         .spec_operand = {
8726                 (BNXT_ULP_REGFILE_INDEX_CLASS_TID >> 8) & 0xff,
8727                 BNXT_ULP_REGFILE_INDEX_CLASS_TID & 0xff,
8728                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
8729                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
8730         },
8731         /* class_tid: 14, wh_plus, table: profile_tcam_0 */
8732         {
8733         .description = "l4_hdr_is_udp_tcp",
8734         .field_bit_size = 1,
8735         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8736         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8737         },
8738         {
8739         .description = "l4_hdr_type",
8740         .field_bit_size = 4,
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 = {
8746                 BNXT_ULP_SYM_L4_HDR_TYPE_UDP,
8747                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
8748                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
8749         },
8750         {
8751         .description = "l4_hdr_error",
8752         .field_bit_size = 1,
8753         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
8754         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
8755                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
8756         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8757         },
8758         {
8759         .description = "l4_hdr_valid",
8760         .field_bit_size = 1,
8761         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
8762         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
8763                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
8764         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
8765         .spec_operand = {
8766                 BNXT_ULP_SYM_L4_HDR_VALID_YES,
8767                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
8768                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
8769         },
8770         {
8771         .description = "l3_ipv6_cmp_dst",
8772         .field_bit_size = 1,
8773         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8774         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8775         },
8776         {
8777         .description = "l3_ipv6_cmp_src",
8778         .field_bit_size = 1,
8779         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8780         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8781         },
8782         {
8783         .description = "l3_hdr_isIP",
8784         .field_bit_size = 1,
8785         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8786         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8787         },
8788         {
8789         .description = "l3_hdr_type",
8790         .field_bit_size = 4,
8791         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
8792         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
8793                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
8794         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
8795         .spec_operand = {
8796                 BNXT_ULP_SYM_L3_HDR_TYPE_IPV6,
8797                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
8798                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
8799         },
8800         {
8801         .description = "l3_hdr_error",
8802         .field_bit_size = 1,
8803         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
8804         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
8805                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
8806         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8807         },
8808         {
8809         .description = "l3_hdr_valid",
8810         .field_bit_size = 1,
8811         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
8812         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
8813                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
8814         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
8815         .spec_operand = {
8816                 BNXT_ULP_SYM_L3_HDR_VALID_YES,
8817                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
8818                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
8819         },
8820         {
8821         .description = "l2_two_vtags",
8822         .field_bit_size = 1,
8823         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8824         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8825         },
8826         {
8827         .description = "l2_vtag_present",
8828         .field_bit_size = 1,
8829         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8830         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8831         },
8832         {
8833         .description = "l2_uc_mc_bc",
8834         .field_bit_size = 2,
8835         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
8836         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
8837                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
8838         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8839         },
8840         {
8841         .description = "l2_hdr_type",
8842         .field_bit_size = 2,
8843         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
8844         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
8845                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
8846         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8847         },
8848         {
8849         .description = "l2_hdr_error",
8850         .field_bit_size = 1,
8851         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
8852         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
8853                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
8854         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8855         },
8856         {
8857         .description = "l2_hdr_valid",
8858         .field_bit_size = 1,
8859         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
8860         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
8861                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
8862         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
8863         .spec_operand = {
8864                 BNXT_ULP_SYM_L2_HDR_VALID_YES,
8865                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
8866                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
8867         },
8868         {
8869         .description = "tun_hdr_flags",
8870         .field_bit_size = 3,
8871         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8872         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8873         },
8874         {
8875         .description = "tun_hdr_type",
8876         .field_bit_size = 4,
8877         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8878         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8879         },
8880         {
8881         .description = "tun_hdr_error",
8882         .field_bit_size = 1,
8883         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8884         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8885         },
8886         {
8887         .description = "tun_hdr_valid",
8888         .field_bit_size = 1,
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 = "tl4_hdr_is_udp_tcp",
8896         .field_bit_size = 1,
8897         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8898         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8899         },
8900         {
8901         .description = "tl4_hdr_type",
8902         .field_bit_size = 4,
8903         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8904         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8905         },
8906         {
8907         .description = "tl4_hdr_error",
8908         .field_bit_size = 1,
8909         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8910         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8911         },
8912         {
8913         .description = "tl4_hdr_valid",
8914         .field_bit_size = 1,
8915         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
8916         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
8917                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
8918         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8919         },
8920         {
8921         .description = "tl3_ipv6_cmp_dst",
8922         .field_bit_size = 1,
8923         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8924         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8925         },
8926         {
8927         .description = "tl3_ipv6_cmp_src",
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 = "tl3_hdr_isIP",
8934         .field_bit_size = 1,
8935         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8936         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8937         },
8938         {
8939         .description = "tl3_hdr_type",
8940         .field_bit_size = 4,
8941         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8942         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8943         },
8944         {
8945         .description = "tl3_hdr_error",
8946         .field_bit_size = 1,
8947         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8948         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8949         },
8950         {
8951         .description = "tl3_hdr_valid",
8952         .field_bit_size = 1,
8953         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
8954         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
8955                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
8956         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8957         },
8958         {
8959         .description = "tl2_two_vtags",
8960         .field_bit_size = 1,
8961         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8962         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8963         },
8964         {
8965         .description = "tl2_vtag_present",
8966         .field_bit_size = 1,
8967         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8968         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8969         },
8970         {
8971         .description = "tl2_uc_mc_bc",
8972         .field_bit_size = 2,
8973         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8974         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8975         },
8976         {
8977         .description = "tl2_hdr_type",
8978         .field_bit_size = 2,
8979         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8980         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8981         },
8982         {
8983         .description = "tl2_hdr_valid",
8984         .field_bit_size = 1,
8985         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
8986         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
8987                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
8988         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8989         },
8990         {
8991         .description = "hrec_next",
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 = "reserved",
8998         .field_bit_size = 9,
8999         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9000         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9001         },
9002         {
9003         .description = "prof_func_id",
9004         .field_bit_size = 7,
9005         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
9006         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
9007                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
9008         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
9009         .spec_operand = {
9010                 (BNXT_ULP_GLB_REGFILE_INDEX_L2_PROF_FUNC_ID >> 8) & 0xff,
9011                 BNXT_ULP_GLB_REGFILE_INDEX_L2_PROF_FUNC_ID & 0xff,
9012                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
9013                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
9014         },
9015         {
9016         .description = "agg_error",
9017         .field_bit_size = 1,
9018         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9019         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9020         },
9021         {
9022         .description = "recycle_cnt",
9023         .field_bit_size = 2,
9024         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
9025         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
9026                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
9027         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9028         },
9029         {
9030         .description = "pkt_type_0",
9031         .field_bit_size = 2,
9032         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9033         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9034         },
9035         {
9036         .description = "pkt_type_1",
9037         .field_bit_size = 2,
9038         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
9039         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
9040                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
9041         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9042         },
9043         {
9044         .description = "valid",
9045         .field_bit_size = 1,
9046         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
9047         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
9048                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
9049         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
9050         .spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
9051                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
9052         },
9053         /* class_tid: 14, wh_plus, table: ext_em_0 */
9054         {
9055         .description = "spare",
9056         .field_bit_size = 59,
9057         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9058         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9059         },
9060         {
9061         .description = "local_cos",
9062         .field_bit_size = 3,
9063         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9064         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9065         },
9066         {
9067         .description = "l4_dst_port",
9068         .field_bit_size = 16,
9069         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9070         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
9071         .spec_operand = {
9072                 (BNXT_ULP_HF14_IDX_O_UDP_DST_PORT >> 8) & 0xff,
9073                 BNXT_ULP_HF14_IDX_O_UDP_DST_PORT & 0xff,
9074                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
9075                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
9076         },
9077         {
9078         .description = "l4_src_port",
9079         .field_bit_size = 16,
9080         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9081         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
9082         .spec_operand = {
9083                 (BNXT_ULP_HF14_IDX_O_UDP_SRC_PORT >> 8) & 0xff,
9084                 BNXT_ULP_HF14_IDX_O_UDP_SRC_PORT & 0xff,
9085                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
9086                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
9087         },
9088         {
9089         .description = "ip_proto",
9090         .field_bit_size = 8,
9091         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9092         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
9093         .spec_operand = {
9094                 BNXT_ULP_SYM_IP_PROTO_UDP,
9095                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
9096                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
9097         },
9098         {
9099         .description = "ipv6_dst_addr",
9100         .field_bit_size = 128,
9101         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9102         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
9103         .spec_operand = {
9104                 (BNXT_ULP_HF14_IDX_O_IPV6_DST_ADDR >> 8) & 0xff,
9105                 BNXT_ULP_HF14_IDX_O_IPV6_DST_ADDR & 0xff,
9106                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
9107                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
9108         },
9109         {
9110         .description = "ipv6_src_addr",
9111         .field_bit_size = 128,
9112         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9113         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
9114         .spec_operand = {
9115                 (BNXT_ULP_HF14_IDX_O_IPV6_SRC_ADDR >> 8) & 0xff,
9116                 BNXT_ULP_HF14_IDX_O_IPV6_SRC_ADDR & 0xff,
9117                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
9118                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
9119         },
9120         {
9121         .description = "l2_src_mac",
9122         .field_bit_size = 48,
9123         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9124         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9125         },
9126         {
9127         .description = "tun_id",
9128         .field_bit_size = 24,
9129         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9130         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9131         },
9132         {
9133         .description = "l2_cntxt_id",
9134         .field_bit_size = 10,
9135         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9136         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
9137         .spec_operand = {
9138                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
9139                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
9140                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
9141                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
9142         },
9143         {
9144         .description = "em_profile_id",
9145         .field_bit_size = 8,
9146         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9147         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
9148         .spec_operand = {
9149                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
9150                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
9151                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
9152                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
9153         },
9154         /* class_tid: 14, wh_plus, table: int_em_0 */
9155         {
9156         .description = "spare",
9157         .field_bit_size = 3,
9158         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9159         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9160         },
9161         {
9162         .description = "local_cos",
9163         .field_bit_size = 3,
9164         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9165         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9166         },
9167         {
9168         .description = "l4_dst_port",
9169         .field_bit_size = 16,
9170         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9171         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
9172         .spec_operand = {
9173                 (BNXT_ULP_HF14_IDX_O_UDP_DST_PORT >> 8) & 0xff,
9174                 BNXT_ULP_HF14_IDX_O_UDP_DST_PORT & 0xff,
9175                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
9176                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
9177         },
9178         {
9179         .description = "l4_src_port",
9180         .field_bit_size = 16,
9181         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9182         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
9183         .spec_operand = {
9184                 (BNXT_ULP_HF14_IDX_O_UDP_SRC_PORT >> 8) & 0xff,
9185                 BNXT_ULP_HF14_IDX_O_UDP_SRC_PORT & 0xff,
9186                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
9187                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
9188         },
9189         {
9190         .description = "ip_proto",
9191         .field_bit_size = 8,
9192         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9193         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
9194         .spec_operand = {
9195                 BNXT_ULP_SYM_IP_PROTO_UDP,
9196                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
9197                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
9198         },
9199         {
9200         .description = "ipv6_dst_addr",
9201         .field_bit_size = 128,
9202         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9203         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
9204         .spec_operand = {
9205                 (BNXT_ULP_HF14_IDX_O_IPV6_DST_ADDR >> 8) & 0xff,
9206                 BNXT_ULP_HF14_IDX_O_IPV6_DST_ADDR & 0xff,
9207                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
9208                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
9209         },
9210         {
9211         .description = "ipv6_src_addr",
9212         .field_bit_size = 128,
9213         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9214         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
9215         .spec_operand = {
9216                 (BNXT_ULP_HF14_IDX_O_IPV6_SRC_ADDR >> 8) & 0xff,
9217                 BNXT_ULP_HF14_IDX_O_IPV6_SRC_ADDR & 0xff,
9218                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
9219                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
9220         },
9221         {
9222         .description = "l2_src_mac",
9223         .field_bit_size = 48,
9224         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9225         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9226         },
9227         {
9228         .description = "tun_id",
9229         .field_bit_size = 24,
9230         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9231         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9232         },
9233         {
9234         .description = "l2_cntxt_id",
9235         .field_bit_size = 10,
9236         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9237         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
9238         .spec_operand = {
9239                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
9240                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
9241                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
9242                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
9243         },
9244         {
9245         .description = "em_profile_id",
9246         .field_bit_size = 8,
9247         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9248         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
9249         .spec_operand = {
9250                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
9251                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
9252                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
9253                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
9254         },
9255         /* class_tid: 15, wh_plus, table: l2_cntxt_tcam_0 */
9256         {
9257         .description = "l2_ivlan_vid",
9258         .field_bit_size = 12,
9259         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
9260         .mask_operand = {
9261                 (BNXT_ULP_HF15_IDX_OO_VLAN_VID >> 8) & 0xff,
9262                 BNXT_ULP_HF15_IDX_OO_VLAN_VID & 0xff,
9263                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
9264                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
9265         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
9266         .spec_operand = {
9267                 (BNXT_ULP_HF15_IDX_OO_VLAN_VID >> 8) & 0xff,
9268                 BNXT_ULP_HF15_IDX_OO_VLAN_VID & 0xff,
9269                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
9270                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
9271         },
9272         {
9273         .description = "l2_ovlan_vid",
9274         .field_bit_size = 12,
9275         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9276         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9277         },
9278         {
9279         .description = "mac0_l2_addr",
9280         .field_bit_size = 48,
9281         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
9282         .mask_operand = {
9283                 (BNXT_ULP_HF15_IDX_O_ETH_DMAC >> 8) & 0xff,
9284                 BNXT_ULP_HF15_IDX_O_ETH_DMAC & 0xff,
9285                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
9286                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
9287         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
9288         .spec_operand = {
9289                 (BNXT_ULP_HF15_IDX_O_ETH_DMAC >> 8) & 0xff,
9290                 BNXT_ULP_HF15_IDX_O_ETH_DMAC & 0xff,
9291                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
9292                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
9293         },
9294         {
9295         .description = "svif",
9296         .field_bit_size = 8,
9297         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
9298         .mask_operand = {
9299                 (BNXT_ULP_HF15_IDX_SVIF_INDEX >> 8) & 0xff,
9300                 BNXT_ULP_HF15_IDX_SVIF_INDEX & 0xff,
9301                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
9302                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
9303         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
9304         .spec_operand = {
9305                 (BNXT_ULP_HF15_IDX_SVIF_INDEX >> 8) & 0xff,
9306                 BNXT_ULP_HF15_IDX_SVIF_INDEX & 0xff,
9307                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
9308                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
9309         },
9310         {
9311         .description = "sparif",
9312         .field_bit_size = 4,
9313         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9314         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9315         },
9316         {
9317         .description = "tl2_ivlan_vid",
9318         .field_bit_size = 12,
9319         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9320         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9321         },
9322         {
9323         .description = "tl2_ovlan_vid",
9324         .field_bit_size = 12,
9325         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9326         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9327         },
9328         {
9329         .description = "mac1_tl2_addr",
9330         .field_bit_size = 48,
9331         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9332         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9333         },
9334         {
9335         .description = "l2_num_vtags",
9336         .field_bit_size = 2,
9337         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
9338         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
9339                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
9340         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,
9341         .spec_operand = {
9342                 (BNXT_ULP_CF_IDX_O_VTAG_NUM >> 8) & 0xff,
9343                 BNXT_ULP_CF_IDX_O_VTAG_NUM & 0xff,
9344                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
9345                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
9346         },
9347         {
9348         .description = "tl2_num_vtags",
9349         .field_bit_size = 2,
9350         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9351         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9352         },
9353         {
9354         .description = "tun_hdr_type",
9355         .field_bit_size = 4,
9356         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9357         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9358         },
9359         {
9360         .description = "key_type",
9361         .field_bit_size = 2,
9362         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
9363         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
9364                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
9365         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9366         },
9367         {
9368         .description = "valid",
9369         .field_bit_size = 1,
9370         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
9371         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
9372                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
9373         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
9374         .spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
9375                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
9376         },
9377         /* class_tid: 15, wh_plus, table: profile_tcam_cache_0 */
9378         {
9379         .description = "recycle",
9380         .field_bit_size = 1,
9381         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9382         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9383         },
9384         {
9385         .description = "prof_func_id",
9386         .field_bit_size = 7,
9387         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9388         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
9389         .spec_operand = {
9390                 (BNXT_ULP_GLB_REGFILE_INDEX_L2_PROF_FUNC_ID >> 8) & 0xff,
9391                 BNXT_ULP_GLB_REGFILE_INDEX_L2_PROF_FUNC_ID & 0xff,
9392                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
9393                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
9394         },
9395         {
9396         .description = "class_tid",
9397         .field_bit_size = 8,
9398         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9399         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
9400         .spec_operand = {
9401                 (BNXT_ULP_REGFILE_INDEX_CLASS_TID >> 8) & 0xff,
9402                 BNXT_ULP_REGFILE_INDEX_CLASS_TID & 0xff,
9403                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
9404                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
9405         },
9406         /* class_tid: 15, wh_plus, table: profile_tcam_0 */
9407         {
9408         .description = "l4_hdr_is_udp_tcp",
9409         .field_bit_size = 1,
9410         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9411         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9412         },
9413         {
9414         .description = "l4_hdr_type",
9415         .field_bit_size = 4,
9416         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
9417         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
9418                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
9419         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9420         },
9421         {
9422         .description = "l4_hdr_error",
9423         .field_bit_size = 1,
9424         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
9425         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
9426                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
9427         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9428         },
9429         {
9430         .description = "l4_hdr_valid",
9431         .field_bit_size = 1,
9432         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
9433         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
9434                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
9435         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
9436         .spec_operand = {
9437                 BNXT_ULP_SYM_L4_HDR_VALID_YES,
9438                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
9439                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
9440         },
9441         {
9442         .description = "l3_ipv6_cmp_dst",
9443         .field_bit_size = 1,
9444         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9445         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9446         },
9447         {
9448         .description = "l3_ipv6_cmp_src",
9449         .field_bit_size = 1,
9450         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9451         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9452         },
9453         {
9454         .description = "l3_hdr_isIP",
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 = "l3_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_CONSTANT,
9466         .spec_operand = {
9467                 BNXT_ULP_SYM_L3_HDR_TYPE_IPV6,
9468                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
9469                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
9470         },
9471         {
9472         .description = "l3_hdr_error",
9473         .field_bit_size = 1,
9474         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
9475         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
9476                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
9477         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9478         },
9479         {
9480         .description = "l3_hdr_valid",
9481         .field_bit_size = 1,
9482         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
9483         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
9484                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
9485         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
9486         .spec_operand = {
9487                 BNXT_ULP_SYM_L3_HDR_VALID_YES,
9488                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
9489                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
9490         },
9491         {
9492         .description = "l2_two_vtags",
9493         .field_bit_size = 1,
9494         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9495         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9496         },
9497         {
9498         .description = "l2_vtag_present",
9499         .field_bit_size = 1,
9500         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9501         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9502         },
9503         {
9504         .description = "l2_uc_mc_bc",
9505         .field_bit_size = 2,
9506         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
9507         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
9508                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
9509         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9510         },
9511         {
9512         .description = "l2_hdr_type",
9513         .field_bit_size = 2,
9514         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
9515         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
9516                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
9517         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9518         },
9519         {
9520         .description = "l2_hdr_error",
9521         .field_bit_size = 1,
9522         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
9523         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
9524                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
9525         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9526         },
9527         {
9528         .description = "l2_hdr_valid",
9529         .field_bit_size = 1,
9530         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
9531         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
9532                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
9533         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
9534         .spec_operand = {
9535                 BNXT_ULP_SYM_L2_HDR_VALID_YES,
9536                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
9537                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
9538         },
9539         {
9540         .description = "tun_hdr_flags",
9541         .field_bit_size = 3,
9542         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9543         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9544         },
9545         {
9546         .description = "tun_hdr_type",
9547         .field_bit_size = 4,
9548         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9549         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9550         },
9551         {
9552         .description = "tun_hdr_error",
9553         .field_bit_size = 1,
9554         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9555         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9556         },
9557         {
9558         .description = "tun_hdr_valid",
9559         .field_bit_size = 1,
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 = "tl4_hdr_is_udp_tcp",
9567         .field_bit_size = 1,
9568         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9569         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9570         },
9571         {
9572         .description = "tl4_hdr_type",
9573         .field_bit_size = 4,
9574         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9575         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9576         },
9577         {
9578         .description = "tl4_hdr_error",
9579         .field_bit_size = 1,
9580         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9581         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9582         },
9583         {
9584         .description = "tl4_hdr_valid",
9585         .field_bit_size = 1,
9586         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
9587         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
9588                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
9589         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9590         },
9591         {
9592         .description = "tl3_ipv6_cmp_dst",
9593         .field_bit_size = 1,
9594         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9595         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9596         },
9597         {
9598         .description = "tl3_ipv6_cmp_src",
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 = "tl3_hdr_isIP",
9605         .field_bit_size = 1,
9606         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9607         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9608         },
9609         {
9610         .description = "tl3_hdr_type",
9611         .field_bit_size = 4,
9612         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9613         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9614         },
9615         {
9616         .description = "tl3_hdr_error",
9617         .field_bit_size = 1,
9618         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9619         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9620         },
9621         {
9622         .description = "tl3_hdr_valid",
9623         .field_bit_size = 1,
9624         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
9625         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
9626                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
9627         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9628         },
9629         {
9630         .description = "tl2_two_vtags",
9631         .field_bit_size = 1,
9632         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9633         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9634         },
9635         {
9636         .description = "tl2_vtag_present",
9637         .field_bit_size = 1,
9638         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9639         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9640         },
9641         {
9642         .description = "tl2_uc_mc_bc",
9643         .field_bit_size = 2,
9644         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9645         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9646         },
9647         {
9648         .description = "tl2_hdr_type",
9649         .field_bit_size = 2,
9650         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9651         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9652         },
9653         {
9654         .description = "tl2_hdr_valid",
9655         .field_bit_size = 1,
9656         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
9657         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
9658                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
9659         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9660         },
9661         {
9662         .description = "hrec_next",
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 = "reserved",
9669         .field_bit_size = 9,
9670         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9671         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9672         },
9673         {
9674         .description = "prof_func_id",
9675         .field_bit_size = 7,
9676         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
9677         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
9678                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
9679         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
9680         .spec_operand = {
9681                 (BNXT_ULP_GLB_REGFILE_INDEX_L2_PROF_FUNC_ID >> 8) & 0xff,
9682                 BNXT_ULP_GLB_REGFILE_INDEX_L2_PROF_FUNC_ID & 0xff,
9683                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
9684                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
9685         },
9686         {
9687         .description = "agg_error",
9688         .field_bit_size = 1,
9689         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9690         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9691         },
9692         {
9693         .description = "recycle_cnt",
9694         .field_bit_size = 2,
9695         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
9696         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
9697                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
9698         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9699         },
9700         {
9701         .description = "pkt_type_0",
9702         .field_bit_size = 2,
9703         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9704         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9705         },
9706         {
9707         .description = "pkt_type_1",
9708         .field_bit_size = 2,
9709         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
9710         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
9711                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
9712         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9713         },
9714         {
9715         .description = "valid",
9716         .field_bit_size = 1,
9717         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
9718         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
9719                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
9720         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
9721         .spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
9722                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
9723         },
9724         /* class_tid: 15, wh_plus, table: ext_em_0 */
9725         {
9726         .description = "spare",
9727         .field_bit_size = 59,
9728         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9729         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9730         },
9731         {
9732         .description = "local_cos",
9733         .field_bit_size = 3,
9734         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9735         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9736         },
9737         {
9738         .description = "l4_dst_port",
9739         .field_bit_size = 16,
9740         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9741         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
9742         .spec_operand = {
9743                 (BNXT_ULP_HF15_IDX_O_TCP_DST_PORT >> 8) & 0xff,
9744                 BNXT_ULP_HF15_IDX_O_TCP_DST_PORT & 0xff,
9745                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
9746                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
9747         },
9748         {
9749         .description = "l4_src_port",
9750         .field_bit_size = 16,
9751         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9752         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
9753         .spec_operand = {
9754                 (BNXT_ULP_HF15_IDX_O_TCP_SRC_PORT >> 8) & 0xff,
9755                 BNXT_ULP_HF15_IDX_O_TCP_SRC_PORT & 0xff,
9756                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
9757                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
9758         },
9759         {
9760         .description = "ip_proto",
9761         .field_bit_size = 8,
9762         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9763         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
9764         .spec_operand = {
9765                 BNXT_ULP_SYM_IP_PROTO_TCP,
9766                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
9767                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
9768         },
9769         {
9770         .description = "ipv6_dst_addr",
9771         .field_bit_size = 128,
9772         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9773         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
9774         .spec_operand = {
9775                 (BNXT_ULP_HF15_IDX_O_IPV6_DST_ADDR >> 8) & 0xff,
9776                 BNXT_ULP_HF15_IDX_O_IPV6_DST_ADDR & 0xff,
9777                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
9778                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
9779         },
9780         {
9781         .description = "ipv6_src_addr",
9782         .field_bit_size = 128,
9783         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9784         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
9785         .spec_operand = {
9786                 (BNXT_ULP_HF15_IDX_O_IPV6_SRC_ADDR >> 8) & 0xff,
9787                 BNXT_ULP_HF15_IDX_O_IPV6_SRC_ADDR & 0xff,
9788                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
9789                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
9790         },
9791         {
9792         .description = "l2_src_mac",
9793         .field_bit_size = 48,
9794         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9795         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9796         },
9797         {
9798         .description = "tun_id",
9799         .field_bit_size = 24,
9800         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9801         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9802         },
9803         {
9804         .description = "l2_cntxt_id",
9805         .field_bit_size = 10,
9806         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9807         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
9808         .spec_operand = {
9809                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
9810                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
9811                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
9812                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
9813         },
9814         {
9815         .description = "em_profile_id",
9816         .field_bit_size = 8,
9817         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9818         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
9819         .spec_operand = {
9820                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
9821                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
9822                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
9823                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
9824         },
9825         /* class_tid: 15, wh_plus, table: int_em_0 */
9826         {
9827         .description = "spare",
9828         .field_bit_size = 3,
9829         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9830         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9831         },
9832         {
9833         .description = "local_cos",
9834         .field_bit_size = 3,
9835         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9836         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9837         },
9838         {
9839         .description = "l4_dst_port",
9840         .field_bit_size = 16,
9841         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9842         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
9843         .spec_operand = {
9844                 (BNXT_ULP_HF15_IDX_O_TCP_DST_PORT >> 8) & 0xff,
9845                 BNXT_ULP_HF15_IDX_O_TCP_DST_PORT & 0xff,
9846                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
9847                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
9848         },
9849         {
9850         .description = "l4_src_port",
9851         .field_bit_size = 16,
9852         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9853         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
9854         .spec_operand = {
9855                 (BNXT_ULP_HF15_IDX_O_TCP_SRC_PORT >> 8) & 0xff,
9856                 BNXT_ULP_HF15_IDX_O_TCP_SRC_PORT & 0xff,
9857                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
9858                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
9859         },
9860         {
9861         .description = "ip_proto",
9862         .field_bit_size = 8,
9863         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9864         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
9865         .spec_operand = {
9866                 BNXT_ULP_SYM_IP_PROTO_TCP,
9867                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
9868                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
9869         },
9870         {
9871         .description = "ipv6_dst_addr",
9872         .field_bit_size = 128,
9873         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9874         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
9875         .spec_operand = {
9876                 (BNXT_ULP_HF15_IDX_O_IPV6_DST_ADDR >> 8) & 0xff,
9877                 BNXT_ULP_HF15_IDX_O_IPV6_DST_ADDR & 0xff,
9878                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
9879                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
9880         },
9881         {
9882         .description = "ipv6_src_addr",
9883         .field_bit_size = 128,
9884         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9885         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
9886         .spec_operand = {
9887                 (BNXT_ULP_HF15_IDX_O_IPV6_SRC_ADDR >> 8) & 0xff,
9888                 BNXT_ULP_HF15_IDX_O_IPV6_SRC_ADDR & 0xff,
9889                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
9890                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
9891         },
9892         {
9893         .description = "l2_src_mac",
9894         .field_bit_size = 48,
9895         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9896         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9897         },
9898         {
9899         .description = "tun_id",
9900         .field_bit_size = 24,
9901         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9902         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9903         },
9904         {
9905         .description = "l2_cntxt_id",
9906         .field_bit_size = 10,
9907         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9908         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
9909         .spec_operand = {
9910                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
9911                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
9912                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
9913                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
9914         },
9915         {
9916         .description = "em_profile_id",
9917         .field_bit_size = 8,
9918         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9919         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
9920         .spec_operand = {
9921                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
9922                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
9923                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
9924                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
9925         },
9926         /* class_tid: 16, wh_plus, table: l2_cntxt_tcam_0 */
9927         {
9928         .description = "l2_ivlan_vid",
9929         .field_bit_size = 12,
9930         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9931         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9932         },
9933         {
9934         .description = "l2_ovlan_vid",
9935         .field_bit_size = 12,
9936         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9937         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9938         },
9939         {
9940         .description = "mac0_l2_dst",
9941         .field_bit_size = 48,
9942         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
9943         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
9944                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
9945         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
9946         .spec_operand = {
9947                 (BNXT_ULP_HF16_IDX_O_ETH_DMAC >> 8) & 0xff,
9948                 BNXT_ULP_HF16_IDX_O_ETH_DMAC & 0xff,
9949                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
9950                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
9951         },
9952         {
9953         .description = "svif",
9954         .field_bit_size = 8,
9955         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
9956         .mask_operand = {
9957                 (BNXT_ULP_HF16_IDX_SVIF_INDEX >> 8) & 0xff,
9958                 BNXT_ULP_HF16_IDX_SVIF_INDEX & 0xff,
9959                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
9960                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
9961         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
9962         .spec_operand = {
9963                 (BNXT_ULP_HF16_IDX_SVIF_INDEX >> 8) & 0xff,
9964                 BNXT_ULP_HF16_IDX_SVIF_INDEX & 0xff,
9965                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
9966                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
9967         },
9968         {
9969         .description = "sparif",
9970         .field_bit_size = 4,
9971         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9972         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9973         },
9974         {
9975         .description = "tl2_ivlan_vid",
9976         .field_bit_size = 12,
9977         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
9978         .mask_operand = {
9979                 (BNXT_ULP_HF16_IDX_OO_VLAN_VID >> 8) & 0xff,
9980                 BNXT_ULP_HF16_IDX_OO_VLAN_VID & 0xff,
9981                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
9982                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
9983         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
9984         .spec_operand = {
9985                 (BNXT_ULP_HF16_IDX_OO_VLAN_VID >> 8) & 0xff,
9986                 BNXT_ULP_HF16_IDX_OO_VLAN_VID & 0xff,
9987                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
9988                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
9989         },
9990         {
9991         .description = "tl2_ovlan_vid",
9992         .field_bit_size = 12,
9993         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9994         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9995         },
9996         {
9997         .description = "mac1_tl2_dst",
9998         .field_bit_size = 48,
9999         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10000         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10001         },
10002         {
10003         .description = "l2_num_vtags",
10004         .field_bit_size = 2,
10005         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10006         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10007         },
10008         {
10009         .description = "tl2_num_vtags",
10010         .field_bit_size = 2,
10011         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
10012         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
10013                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
10014         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,
10015         .spec_operand = {
10016                 (BNXT_ULP_CF_IDX_O_VTAG_NUM >> 8) & 0xff,
10017                 BNXT_ULP_CF_IDX_O_VTAG_NUM & 0xff,
10018                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
10019                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
10020         },
10021         {
10022         .description = "tun_hdr_type",
10023         .field_bit_size = 4,
10024         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
10025         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
10026                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
10027         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10028         },
10029         {
10030         .description = "key_type",
10031         .field_bit_size = 2,
10032         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10033         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10034         },
10035         {
10036         .description = "valid",
10037         .field_bit_size = 1,
10038         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
10039         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
10040                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
10041         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
10042         .spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
10043                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
10044         },
10045         /* class_tid: 16, wh_plus, table: profile_tcam_cache_0 */
10046         {
10047         .description = "recycle",
10048         .field_bit_size = 1,
10049         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10050         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10051         },
10052         {
10053         .description = "prof_func_id",
10054         .field_bit_size = 7,
10055         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10056         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
10057         .spec_operand = {
10058                 (BNXT_ULP_GLB_REGFILE_INDEX_VXLAN_PROF_FUNC_ID >> 8) & 0xff,
10059                 BNXT_ULP_GLB_REGFILE_INDEX_VXLAN_PROF_FUNC_ID & 0xff,
10060                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
10061                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
10062         },
10063         {
10064         .description = "class_tid",
10065         .field_bit_size = 8,
10066         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10067         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
10068         .spec_operand = {
10069                 (BNXT_ULP_REGFILE_INDEX_CLASS_TID >> 8) & 0xff,
10070                 BNXT_ULP_REGFILE_INDEX_CLASS_TID & 0xff,
10071                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
10072                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
10073         },
10074         /* class_tid: 16, wh_plus, table: profile_tcam_0 */
10075         {
10076         .description = "l4_hdr_is_udp_tcp",
10077         .field_bit_size = 1,
10078         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10079         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10080         },
10081         {
10082         .description = "l4_hdr_type",
10083         .field_bit_size = 4,
10084         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10085         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10086         },
10087         {
10088         .description = "l4_hdr_error",
10089         .field_bit_size = 1,
10090         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10091         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10092         },
10093         {
10094         .description = "l4_hdr_valid",
10095         .field_bit_size = 1,
10096         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10097         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10098         },
10099         {
10100         .description = "l3_ipv6_cmp_dst",
10101         .field_bit_size = 1,
10102         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10103         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10104         },
10105         {
10106         .description = "l3_ipv6_cmp_src",
10107         .field_bit_size = 1,
10108         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10109         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10110         },
10111         {
10112         .description = "l3_hdr_isIP",
10113         .field_bit_size = 1,
10114         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10115         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10116         },
10117         {
10118         .description = "l3_hdr_type",
10119         .field_bit_size = 4,
10120         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10121         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10122         },
10123         {
10124         .description = "l3_hdr_error",
10125         .field_bit_size = 1,
10126         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10127         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10128         },
10129         {
10130         .description = "l3_hdr_valid",
10131         .field_bit_size = 1,
10132         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10133         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10134         },
10135         {
10136         .description = "l2_two_vtags",
10137         .field_bit_size = 1,
10138         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10139         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10140         },
10141         {
10142         .description = "l2_vtag_present",
10143         .field_bit_size = 1,
10144         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10145         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10146         },
10147         {
10148         .description = "l2_uc_mc_bc",
10149         .field_bit_size = 2,
10150         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10151         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10152         },
10153         {
10154         .description = "l2_hdr_type",
10155         .field_bit_size = 2,
10156         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10157         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10158         },
10159         {
10160         .description = "l2_hdr_error",
10161         .field_bit_size = 1,
10162         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10163         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10164         },
10165         {
10166         .description = "l2_hdr_valid",
10167         .field_bit_size = 1,
10168         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10169         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10170         },
10171         {
10172         .description = "tun_hdr_flags",
10173         .field_bit_size = 3,
10174         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10175         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10176         },
10177         {
10178         .description = "tun_hdr_type",
10179         .field_bit_size = 4,
10180         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
10181         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
10182                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
10183         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10184         },
10185         {
10186         .description = "tun_hdr_error",
10187         .field_bit_size = 1,
10188         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
10189         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
10190                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
10191         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10192         },
10193         {
10194         .description = "tun_hdr_valid",
10195         .field_bit_size = 1,
10196         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
10197         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
10198                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
10199         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
10200         .spec_operand = {
10201                 BNXT_ULP_SYM_TUN_HDR_VALID_YES,
10202                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
10203                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
10204         },
10205         {
10206         .description = "tl4_hdr_is_udp_tcp",
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 = "tl4_hdr_type",
10213         .field_bit_size = 4,
10214         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
10215         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
10216                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
10217         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
10218         .spec_operand = {
10219                 BNXT_ULP_SYM_TL4_HDR_TYPE_UDP,
10220                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
10221                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
10222         },
10223         {
10224         .description = "tl4_hdr_error",
10225         .field_bit_size = 1,
10226         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
10227         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
10228                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
10229         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10230         },
10231         {
10232         .description = "tl4_hdr_valid",
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_CONSTANT,
10238         .spec_operand = {
10239                 BNXT_ULP_SYM_TL4_HDR_VALID_YES,
10240                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
10241                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
10242         },
10243         {
10244         .description = "tl3_ipv6_cmp_dst",
10245         .field_bit_size = 1,
10246         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10247         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10248         },
10249         {
10250         .description = "tl3_ipv6_cmp_src",
10251         .field_bit_size = 1,
10252         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10253         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10254         },
10255         {
10256         .description = "tl3_hdr_isIP",
10257         .field_bit_size = 1,
10258         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10259         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10260         },
10261         {
10262         .description = "tl3_hdr_type",
10263         .field_bit_size = 4,
10264         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
10265         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
10266                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
10267         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10268         },
10269         {
10270         .description = "tl3_hdr_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 = "tl3_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_TL3_HDR_VALID_YES,
10286                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
10287                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
10288         },
10289         {
10290         .description = "tl2_two_vtags",
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 = "tl2_vtag_present",
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 = "tl2_uc_mc_bc",
10303         .field_bit_size = 2,
10304         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
10305         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
10306                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
10307         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10308         },
10309         {
10310         .description = "tl2_hdr_type",
10311         .field_bit_size = 2,
10312         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
10313         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
10314                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
10315         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10316         },
10317         {
10318         .description = "tl2_hdr_valid",
10319         .field_bit_size = 1,
10320         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
10321         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
10322                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
10323         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
10324         .spec_operand = {
10325                 BNXT_ULP_SYM_TL2_HDR_VALID_YES,
10326                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
10327                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
10328         },
10329         {
10330         .description = "hrec_next",
10331         .field_bit_size = 1,
10332         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10333         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10334         },
10335         {
10336         .description = "reserved",
10337         .field_bit_size = 9,
10338         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10339         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10340         },
10341         {
10342         .description = "prof_func_id",
10343         .field_bit_size = 7,
10344         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
10345         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
10346                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
10347         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
10348         .spec_operand = {
10349                 (BNXT_ULP_GLB_REGFILE_INDEX_VXLAN_PROF_FUNC_ID >> 8) & 0xff,
10350                 BNXT_ULP_GLB_REGFILE_INDEX_VXLAN_PROF_FUNC_ID & 0xff,
10351                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
10352                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
10353         },
10354         {
10355         .description = "agg_error",
10356         .field_bit_size = 1,
10357         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10358         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10359         },
10360         {
10361         .description = "recycle_cnt",
10362         .field_bit_size = 2,
10363         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
10364         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
10365                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
10366         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10367         },
10368         {
10369         .description = "pkt_type_0",
10370         .field_bit_size = 2,
10371         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10372         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10373         },
10374         {
10375         .description = "pkt_type_1",
10376         .field_bit_size = 2,
10377         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
10378         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
10379                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
10380         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10381         },
10382         {
10383         .description = "valid",
10384         .field_bit_size = 1,
10385         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
10386         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
10387                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
10388         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
10389         .spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
10390                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
10391         },
10392         /* class_tid: 16, wh_plus, table: ext_em_0 */
10393         {
10394         .description = "spare",
10395         .field_bit_size = 251,
10396         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10397         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10398         },
10399         {
10400         .description = "local_cos",
10401         .field_bit_size = 3,
10402         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10403         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10404         },
10405         {
10406         .description = "t_l4_dst_port",
10407         .field_bit_size = 16,
10408         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10409         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10410         },
10411         {
10412         .description = "t_l4_src_port",
10413         .field_bit_size = 16,
10414         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10415         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10416         },
10417         {
10418         .description = "t_ip_proto",
10419         .field_bit_size = 8,
10420         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10421         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
10422         .spec_operand = {
10423                 BNXT_ULP_SYM_IP_PROTO_UDP,
10424                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
10425                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
10426         },
10427         {
10428         .description = "t_ipv4_dst_addr",
10429         .field_bit_size = 32,
10430         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10431         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
10432         .spec_operand = {
10433                 (BNXT_ULP_HF16_IDX_O_IPV4_DST_ADDR >> 8) & 0xff,
10434                 BNXT_ULP_HF16_IDX_O_IPV4_DST_ADDR & 0xff,
10435                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
10436                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
10437         },
10438         {
10439         .description = "t_ipv4_src_addr",
10440         .field_bit_size = 32,
10441         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10442         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10443         },
10444         {
10445         .description = "t_l2_src_mac",
10446         .field_bit_size = 48,
10447         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10448         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10449         },
10450         {
10451         .description = "tun_id",
10452         .field_bit_size = 24,
10453         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10454         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10455         },
10456         {
10457         .description = "l2_cntxt_id",
10458         .field_bit_size = 10,
10459         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10460         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
10461         .spec_operand = {
10462                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
10463                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
10464                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
10465                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
10466         },
10467         {
10468         .description = "em_profile_id",
10469         .field_bit_size = 8,
10470         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10471         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
10472         .spec_operand = {
10473                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
10474                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
10475                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
10476                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
10477         },
10478         /* class_tid: 16, wh_plus, table: int_em_0 */
10479         {
10480         .description = "spare",
10481         .field_bit_size = 3,
10482         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10483         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10484         },
10485         {
10486         .description = "local_cos",
10487         .field_bit_size = 3,
10488         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10489         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10490         },
10491         {
10492         .description = "t_l4_dst_port",
10493         .field_bit_size = 16,
10494         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10495         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10496         },
10497         {
10498         .description = "t_l4_src_port",
10499         .field_bit_size = 16,
10500         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10501         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10502         },
10503         {
10504         .description = "t_ip_proto",
10505         .field_bit_size = 8,
10506         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10507         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
10508         .spec_operand = {
10509                 BNXT_ULP_SYM_IP_PROTO_UDP,
10510                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
10511                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
10512         },
10513         {
10514         .description = "t_ipv4_dst_addr",
10515         .field_bit_size = 32,
10516         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10517         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
10518         .spec_operand = {
10519                 (BNXT_ULP_HF16_IDX_O_IPV4_DST_ADDR >> 8) & 0xff,
10520                 BNXT_ULP_HF16_IDX_O_IPV4_DST_ADDR & 0xff,
10521                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
10522                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
10523         },
10524         {
10525         .description = "t_ipv4_src_addr",
10526         .field_bit_size = 32,
10527         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10528         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10529         },
10530         {
10531         .description = "t_l2_src_mac",
10532         .field_bit_size = 48,
10533         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10534         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10535         },
10536         {
10537         .description = "tun_id",
10538         .field_bit_size = 24,
10539         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10540         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10541         },
10542         {
10543         .description = "l2_cntxt_id",
10544         .field_bit_size = 10,
10545         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10546         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
10547         .spec_operand = {
10548                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
10549                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
10550                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
10551                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
10552         },
10553         {
10554         .description = "em_profile_id",
10555         .field_bit_size = 8,
10556         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10557         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
10558         .spec_operand = {
10559                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
10560                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
10561                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
10562                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
10563         },
10564         /* class_tid: 17, wh_plus, table: l2_cntxt_tcam_0 */
10565         {
10566         .description = "l2_ivlan_vid",
10567         .field_bit_size = 12,
10568         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10569         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10570         },
10571         {
10572         .description = "l2_ovlan_vid",
10573         .field_bit_size = 12,
10574         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10575         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10576         },
10577         {
10578         .description = "mac0_l2_dst",
10579         .field_bit_size = 48,
10580         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
10581         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
10582                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
10583         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
10584         .spec_operand = {
10585                 (BNXT_ULP_HF17_IDX_O_ETH_DMAC >> 8) & 0xff,
10586                 BNXT_ULP_HF17_IDX_O_ETH_DMAC & 0xff,
10587                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
10588                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
10589         },
10590         {
10591         .description = "svif",
10592         .field_bit_size = 8,
10593         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
10594         .mask_operand = {
10595                 (BNXT_ULP_HF17_IDX_SVIF_INDEX >> 8) & 0xff,
10596                 BNXT_ULP_HF17_IDX_SVIF_INDEX & 0xff,
10597                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
10598                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
10599         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
10600         .spec_operand = {
10601                 (BNXT_ULP_HF17_IDX_SVIF_INDEX >> 8) & 0xff,
10602                 BNXT_ULP_HF17_IDX_SVIF_INDEX & 0xff,
10603                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
10604                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
10605         },
10606         {
10607         .description = "sparif",
10608         .field_bit_size = 4,
10609         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10610         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10611         },
10612         {
10613         .description = "tl2_ivlan_vid",
10614         .field_bit_size = 12,
10615         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
10616         .mask_operand = {
10617                 (BNXT_ULP_HF17_IDX_OO_VLAN_VID >> 8) & 0xff,
10618                 BNXT_ULP_HF17_IDX_OO_VLAN_VID & 0xff,
10619                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
10620                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
10621         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
10622         .spec_operand = {
10623                 (BNXT_ULP_HF17_IDX_OO_VLAN_VID >> 8) & 0xff,
10624                 BNXT_ULP_HF17_IDX_OO_VLAN_VID & 0xff,
10625                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
10626                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
10627         },
10628         {
10629         .description = "tl2_ovlan_vid",
10630         .field_bit_size = 12,
10631         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10632         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10633         },
10634         {
10635         .description = "mac1_tl2_dst",
10636         .field_bit_size = 48,
10637         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10638         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10639         },
10640         {
10641         .description = "l2_num_vtags",
10642         .field_bit_size = 2,
10643         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10644         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10645         },
10646         {
10647         .description = "tl2_num_vtags",
10648         .field_bit_size = 2,
10649         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
10650         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
10651                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
10652         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,
10653         .spec_operand = {
10654                 (BNXT_ULP_CF_IDX_O_VTAG_NUM >> 8) & 0xff,
10655                 BNXT_ULP_CF_IDX_O_VTAG_NUM & 0xff,
10656                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
10657                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
10658         },
10659         {
10660         .description = "tun_hdr_type",
10661         .field_bit_size = 4,
10662         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
10663         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
10664                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
10665         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10666         },
10667         {
10668         .description = "key_type",
10669         .field_bit_size = 2,
10670         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10671         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10672         },
10673         {
10674         .description = "valid",
10675         .field_bit_size = 1,
10676         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
10677         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
10678                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
10679         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
10680         .spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
10681                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
10682         },
10683         /* class_tid: 17, wh_plus, table: profile_tcam_cache_0 */
10684         {
10685         .description = "recycle",
10686         .field_bit_size = 1,
10687         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10688         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10689         },
10690         {
10691         .description = "prof_func_id",
10692         .field_bit_size = 7,
10693         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10694         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
10695         .spec_operand = {
10696                 (BNXT_ULP_GLB_REGFILE_INDEX_VXLAN_PROF_FUNC_ID >> 8) & 0xff,
10697                 BNXT_ULP_GLB_REGFILE_INDEX_VXLAN_PROF_FUNC_ID & 0xff,
10698                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
10699                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
10700         },
10701         {
10702         .description = "class_tid",
10703         .field_bit_size = 8,
10704         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10705         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
10706         .spec_operand = {
10707                 (BNXT_ULP_REGFILE_INDEX_CLASS_TID >> 8) & 0xff,
10708                 BNXT_ULP_REGFILE_INDEX_CLASS_TID & 0xff,
10709                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
10710                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
10711         },
10712         /* class_tid: 17, wh_plus, table: profile_tcam_0 */
10713         {
10714         .description = "l4_hdr_is_udp_tcp",
10715         .field_bit_size = 1,
10716         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10717         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10718         },
10719         {
10720         .description = "l4_hdr_type",
10721         .field_bit_size = 4,
10722         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10723         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10724         },
10725         {
10726         .description = "l4_hdr_error",
10727         .field_bit_size = 1,
10728         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10729         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10730         },
10731         {
10732         .description = "l4_hdr_valid",
10733         .field_bit_size = 1,
10734         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10735         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10736         },
10737         {
10738         .description = "l3_ipv6_cmp_dst",
10739         .field_bit_size = 1,
10740         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10741         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10742         },
10743         {
10744         .description = "l3_ipv6_cmp_src",
10745         .field_bit_size = 1,
10746         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10747         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10748         },
10749         {
10750         .description = "l3_hdr_isIP",
10751         .field_bit_size = 1,
10752         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10753         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10754         },
10755         {
10756         .description = "l3_hdr_type",
10757         .field_bit_size = 4,
10758         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10759         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10760         },
10761         {
10762         .description = "l3_hdr_error",
10763         .field_bit_size = 1,
10764         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10765         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10766         },
10767         {
10768         .description = "l3_hdr_valid",
10769         .field_bit_size = 1,
10770         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10771         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10772         },
10773         {
10774         .description = "l2_two_vtags",
10775         .field_bit_size = 1,
10776         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10777         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10778         },
10779         {
10780         .description = "l2_vtag_present",
10781         .field_bit_size = 1,
10782         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10783         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10784         },
10785         {
10786         .description = "l2_uc_mc_bc",
10787         .field_bit_size = 2,
10788         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10789         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10790         },
10791         {
10792         .description = "l2_hdr_type",
10793         .field_bit_size = 2,
10794         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10795         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10796         },
10797         {
10798         .description = "l2_hdr_error",
10799         .field_bit_size = 1,
10800         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10801         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10802         },
10803         {
10804         .description = "l2_hdr_valid",
10805         .field_bit_size = 1,
10806         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10807         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10808         },
10809         {
10810         .description = "tun_hdr_flags",
10811         .field_bit_size = 3,
10812         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10813         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10814         },
10815         {
10816         .description = "tun_hdr_type",
10817         .field_bit_size = 4,
10818         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
10819         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
10820                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
10821         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10822         },
10823         {
10824         .description = "tun_hdr_error",
10825         .field_bit_size = 1,
10826         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
10827         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
10828                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
10829         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10830         },
10831         {
10832         .description = "tun_hdr_valid",
10833         .field_bit_size = 1,
10834         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
10835         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
10836                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
10837         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
10838         .spec_operand = {
10839                 BNXT_ULP_SYM_TUN_HDR_VALID_YES,
10840                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
10841                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
10842         },
10843         {
10844         .description = "tl4_hdr_is_udp_tcp",
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 = "tl4_hdr_type",
10851         .field_bit_size = 4,
10852         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
10853         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
10854                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
10855         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
10856         .spec_operand = {
10857                 BNXT_ULP_SYM_TL4_HDR_TYPE_UDP,
10858                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
10859                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
10860         },
10861         {
10862         .description = "tl4_hdr_error",
10863         .field_bit_size = 1,
10864         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
10865         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
10866                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
10867         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10868         },
10869         {
10870         .description = "tl4_hdr_valid",
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_CONSTANT,
10876         .spec_operand = {
10877                 BNXT_ULP_SYM_TL4_HDR_VALID_YES,
10878                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
10879                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
10880         },
10881         {
10882         .description = "tl3_ipv6_cmp_dst",
10883         .field_bit_size = 1,
10884         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10885         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10886         },
10887         {
10888         .description = "tl3_ipv6_cmp_src",
10889         .field_bit_size = 1,
10890         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10891         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10892         },
10893         {
10894         .description = "tl3_hdr_isIP",
10895         .field_bit_size = 1,
10896         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10897         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10898         },
10899         {
10900         .description = "tl3_hdr_type",
10901         .field_bit_size = 4,
10902         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
10903         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
10904                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
10905         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
10906         .spec_operand = {
10907                 BNXT_ULP_SYM_TL3_HDR_TYPE_IPV6,
10908                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
10909                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
10910         },
10911         {
10912         .description = "tl3_hdr_error",
10913         .field_bit_size = 1,
10914         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
10915         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
10916                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
10917         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10918         },
10919         {
10920         .description = "tl3_hdr_valid",
10921         .field_bit_size = 1,
10922         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
10923         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
10924                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
10925         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
10926         .spec_operand = {
10927                 BNXT_ULP_SYM_TL3_HDR_VALID_YES,
10928                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
10929                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
10930         },
10931         {
10932         .description = "tl2_two_vtags",
10933         .field_bit_size = 1,
10934         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10935         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10936         },
10937         {
10938         .description = "tl2_vtag_present",
10939         .field_bit_size = 1,
10940         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10941         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10942         },
10943         {
10944         .description = "tl2_uc_mc_bc",
10945         .field_bit_size = 2,
10946         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
10947         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
10948                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
10949         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10950         },
10951         {
10952         .description = "tl2_hdr_type",
10953         .field_bit_size = 2,
10954         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
10955         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
10956                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
10957         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10958         },
10959         {
10960         .description = "tl2_hdr_valid",
10961         .field_bit_size = 1,
10962         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
10963         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
10964                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
10965         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
10966         .spec_operand = {
10967                 BNXT_ULP_SYM_TL2_HDR_VALID_YES,
10968                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
10969                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
10970         },
10971         {
10972         .description = "hrec_next",
10973         .field_bit_size = 1,
10974         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10975         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10976         },
10977         {
10978         .description = "reserved",
10979         .field_bit_size = 9,
10980         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10981         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10982         },
10983         {
10984         .description = "prof_func_id",
10985         .field_bit_size = 7,
10986         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
10987         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
10988                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
10989         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
10990         .spec_operand = {
10991                 (BNXT_ULP_GLB_REGFILE_INDEX_VXLAN_PROF_FUNC_ID >> 8) & 0xff,
10992                 BNXT_ULP_GLB_REGFILE_INDEX_VXLAN_PROF_FUNC_ID & 0xff,
10993                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
10994                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
10995         },
10996         {
10997         .description = "agg_error",
10998         .field_bit_size = 1,
10999         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11000         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11001         },
11002         {
11003         .description = "recycle_cnt",
11004         .field_bit_size = 2,
11005         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
11006         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
11007                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
11008         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11009         },
11010         {
11011         .description = "pkt_type_0",
11012         .field_bit_size = 2,
11013         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11014         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11015         },
11016         {
11017         .description = "pkt_type_1",
11018         .field_bit_size = 2,
11019         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
11020         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
11021                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
11022         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11023         },
11024         {
11025         .description = "valid",
11026         .field_bit_size = 1,
11027         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
11028         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
11029                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
11030         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
11031         .spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
11032                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
11033         },
11034         /* class_tid: 17, wh_plus, table: ext_em_0 */
11035         {
11036         .description = "spare",
11037         .field_bit_size = 59,
11038         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11039         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11040         },
11041         {
11042         .description = "local_cos",
11043         .field_bit_size = 3,
11044         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11045         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11046         },
11047         {
11048         .description = "l4_dst_port",
11049         .field_bit_size = 16,
11050         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11051         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11052         },
11053         {
11054         .description = "l4_src_port",
11055         .field_bit_size = 16,
11056         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11057         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11058         },
11059         {
11060         .description = "ip_proto",
11061         .field_bit_size = 8,
11062         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11063         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
11064         .spec_operand = {
11065                 BNXT_ULP_SYM_IP_PROTO_UDP,
11066                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
11067                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
11068         },
11069         {
11070         .description = "ipv6_dst_addr",
11071         .field_bit_size = 128,
11072         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11073         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
11074         .spec_operand = {
11075                 (BNXT_ULP_HF17_IDX_O_IPV6_DST_ADDR >> 8) & 0xff,
11076                 BNXT_ULP_HF17_IDX_O_IPV6_DST_ADDR & 0xff,
11077                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
11078                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
11079         },
11080         {
11081         .description = "ipv6_src_addr",
11082         .field_bit_size = 128,
11083         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11084         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11085         },
11086         {
11087         .description = "l2_src_mac",
11088         .field_bit_size = 48,
11089         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11090         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11091         },
11092         {
11093         .description = "tun_id",
11094         .field_bit_size = 24,
11095         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11096         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11097         },
11098         {
11099         .description = "l2_cntxt_id",
11100         .field_bit_size = 10,
11101         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11102         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
11103         .spec_operand = {
11104                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
11105                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
11106                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
11107                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
11108         },
11109         {
11110         .description = "em_profile_id",
11111         .field_bit_size = 8,
11112         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11113         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
11114         .spec_operand = {
11115                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
11116                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
11117                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
11118                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
11119         },
11120         /* class_tid: 17, wh_plus, table: int_em_0 */
11121         {
11122         .description = "spare",
11123         .field_bit_size = 3,
11124         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11125         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11126         },
11127         {
11128         .description = "local_cos",
11129         .field_bit_size = 3,
11130         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11131         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11132         },
11133         {
11134         .description = "l4_dst_port",
11135         .field_bit_size = 16,
11136         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11137         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11138         },
11139         {
11140         .description = "l4_src_port",
11141         .field_bit_size = 16,
11142         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11143         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11144         },
11145         {
11146         .description = "ip_proto",
11147         .field_bit_size = 8,
11148         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11149         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
11150         .spec_operand = {
11151                 BNXT_ULP_SYM_IP_PROTO_UDP,
11152                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
11153                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
11154         },
11155         {
11156         .description = "ipv6_dst_addr",
11157         .field_bit_size = 128,
11158         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11159         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
11160         .spec_operand = {
11161                 (BNXT_ULP_HF17_IDX_O_IPV6_DST_ADDR >> 8) & 0xff,
11162                 BNXT_ULP_HF17_IDX_O_IPV6_DST_ADDR & 0xff,
11163                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
11164                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
11165         },
11166         {
11167         .description = "ipv6_src_addr",
11168         .field_bit_size = 128,
11169         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11170         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11171         },
11172         {
11173         .description = "l2_src_mac",
11174         .field_bit_size = 48,
11175         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11176         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11177         },
11178         {
11179         .description = "tun_id",
11180         .field_bit_size = 24,
11181         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11182         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11183         },
11184         {
11185         .description = "l2_cntxt_id",
11186         .field_bit_size = 10,
11187         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11188         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
11189         .spec_operand = {
11190                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
11191                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
11192                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
11193                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
11194         },
11195         {
11196         .description = "em_profile_id",
11197         .field_bit_size = 8,
11198         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11199         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
11200         .spec_operand = {
11201                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
11202                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
11203                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
11204                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
11205         },
11206         /* class_tid: 18, wh_plus, table: l2_cntxt_tcam_0 */
11207         {
11208         .description = "l2_ivlan_vid",
11209         .field_bit_size = 12,
11210         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11211         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11212         },
11213         {
11214         .description = "l2_ovlan_vid",
11215         .field_bit_size = 12,
11216         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11217         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11218         },
11219         {
11220         .description = "mac0_l2_dst",
11221         .field_bit_size = 48,
11222         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
11223         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
11224                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
11225         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
11226         .spec_operand = {
11227                 (BNXT_ULP_HF18_IDX_O_ETH_DMAC >> 8) & 0xff,
11228                 BNXT_ULP_HF18_IDX_O_ETH_DMAC & 0xff,
11229                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
11230                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
11231         },
11232         {
11233         .description = "svif",
11234         .field_bit_size = 8,
11235         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
11236         .mask_operand = {
11237                 (BNXT_ULP_HF18_IDX_SVIF_INDEX >> 8) & 0xff,
11238                 BNXT_ULP_HF18_IDX_SVIF_INDEX & 0xff,
11239                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
11240                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
11241         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
11242         .spec_operand = {
11243                 (BNXT_ULP_HF18_IDX_SVIF_INDEX >> 8) & 0xff,
11244                 BNXT_ULP_HF18_IDX_SVIF_INDEX & 0xff,
11245                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
11246                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
11247         },
11248         {
11249         .description = "sparif",
11250         .field_bit_size = 4,
11251         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11252         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11253         },
11254         {
11255         .description = "tl2_ivlan_vid",
11256         .field_bit_size = 12,
11257         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11258         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11259         },
11260         {
11261         .description = "tl2_ovlan_vid",
11262         .field_bit_size = 12,
11263         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11264         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11265         },
11266         {
11267         .description = "mac1_tl2_dst",
11268         .field_bit_size = 48,
11269         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11270         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11271         },
11272         {
11273         .description = "l2_num_vtags",
11274         .field_bit_size = 2,
11275         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11276         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11277         },
11278         {
11279         .description = "tl2_num_vtags",
11280         .field_bit_size = 2,
11281         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
11282         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
11283                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
11284         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11285         },
11286         {
11287         .description = "tun_hdr_type",
11288         .field_bit_size = 4,
11289         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
11290         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
11291                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
11292         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11293         },
11294         {
11295         .description = "key_type",
11296         .field_bit_size = 2,
11297         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11298         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11299         },
11300         {
11301         .description = "valid",
11302         .field_bit_size = 1,
11303         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
11304         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
11305                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
11306         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
11307         .spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
11308                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
11309         },
11310         /* class_tid: 18, wh_plus, table: profile_tcam_cache_0 */
11311         {
11312         .description = "recycle",
11313         .field_bit_size = 1,
11314         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11315         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11316         },
11317         {
11318         .description = "prof_func_id",
11319         .field_bit_size = 7,
11320         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11321         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
11322         .spec_operand = {
11323                 (BNXT_ULP_GLB_REGFILE_INDEX_VXLAN_PROF_FUNC_ID >> 8) & 0xff,
11324                 BNXT_ULP_GLB_REGFILE_INDEX_VXLAN_PROF_FUNC_ID & 0xff,
11325                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
11326                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
11327         },
11328         {
11329         .description = "class_tid",
11330         .field_bit_size = 8,
11331         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11332         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11333         },
11334         /* class_tid: 18, wh_plus, table: profile_tcam_0 */
11335         {
11336         .description = "l4_hdr_is_udp_tcp",
11337         .field_bit_size = 1,
11338         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11339         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11340         },
11341         {
11342         .description = "l4_hdr_type",
11343         .field_bit_size = 4,
11344         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11345         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11346         },
11347         {
11348         .description = "l4_hdr_error",
11349         .field_bit_size = 1,
11350         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11351         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11352         },
11353         {
11354         .description = "l4_hdr_valid",
11355         .field_bit_size = 1,
11356         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11357         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11358         },
11359         {
11360         .description = "l3_ipv6_cmp_dst",
11361         .field_bit_size = 1,
11362         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11363         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11364         },
11365         {
11366         .description = "l3_ipv6_cmp_src",
11367         .field_bit_size = 1,
11368         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11369         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11370         },
11371         {
11372         .description = "l3_hdr_isIP",
11373         .field_bit_size = 1,
11374         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11375         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11376         },
11377         {
11378         .description = "l3_hdr_type",
11379         .field_bit_size = 4,
11380         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11381         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11382         },
11383         {
11384         .description = "l3_hdr_error",
11385         .field_bit_size = 1,
11386         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11387         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11388         },
11389         {
11390         .description = "l3_hdr_valid",
11391         .field_bit_size = 1,
11392         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11393         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11394         },
11395         {
11396         .description = "l2_two_vtags",
11397         .field_bit_size = 1,
11398         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11399         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11400         },
11401         {
11402         .description = "l2_vtag_present",
11403         .field_bit_size = 1,
11404         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11405         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11406         },
11407         {
11408         .description = "l2_uc_mc_bc",
11409         .field_bit_size = 2,
11410         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11411         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11412         },
11413         {
11414         .description = "l2_hdr_type",
11415         .field_bit_size = 2,
11416         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11417         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11418         },
11419         {
11420         .description = "l2_hdr_error",
11421         .field_bit_size = 1,
11422         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11423         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11424         },
11425         {
11426         .description = "l2_hdr_valid",
11427         .field_bit_size = 1,
11428         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11429         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11430         },
11431         {
11432         .description = "tun_hdr_flags",
11433         .field_bit_size = 3,
11434         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11435         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11436         },
11437         {
11438         .description = "tun_hdr_type",
11439         .field_bit_size = 4,
11440         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
11441         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
11442                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
11443         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11444         },
11445         {
11446         .description = "tun_hdr_error",
11447         .field_bit_size = 1,
11448         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
11449         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
11450                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
11451         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11452         },
11453         {
11454         .description = "tun_hdr_valid",
11455         .field_bit_size = 1,
11456         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
11457         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
11458                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
11459         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
11460         .spec_operand = {
11461                 BNXT_ULP_SYM_TUN_HDR_VALID_YES,
11462                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
11463                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
11464         },
11465         {
11466         .description = "tl4_hdr_is_udp_tcp",
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 = "tl4_hdr_type",
11473         .field_bit_size = 4,
11474         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
11475         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
11476                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
11477         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
11478         .spec_operand = {
11479                 BNXT_ULP_SYM_TL4_HDR_TYPE_UDP,
11480                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
11481                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
11482         },
11483         {
11484         .description = "tl4_hdr_error",
11485         .field_bit_size = 1,
11486         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
11487         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
11488                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
11489         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11490         },
11491         {
11492         .description = "tl4_hdr_valid",
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_CONSTANT,
11498         .spec_operand = {
11499                 BNXT_ULP_SYM_TL4_HDR_VALID_YES,
11500                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
11501                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
11502         },
11503         {
11504         .description = "tl3_ipv6_cmp_dst",
11505         .field_bit_size = 1,
11506         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11507         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11508         },
11509         {
11510         .description = "tl3_ipv6_cmp_src",
11511         .field_bit_size = 1,
11512         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11513         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11514         },
11515         {
11516         .description = "tl3_hdr_isIP",
11517         .field_bit_size = 1,
11518         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11519         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11520         },
11521         {
11522         .description = "tl3_hdr_type",
11523         .field_bit_size = 4,
11524         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
11525         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
11526                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
11527         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11528         },
11529         {
11530         .description = "tl3_hdr_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 = "tl3_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_TL3_HDR_VALID_YES,
11546                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
11547                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
11548         },
11549         {
11550         .description = "tl2_two_vtags",
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 = "tl2_vtag_present",
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 = "tl2_uc_mc_bc",
11563         .field_bit_size = 2,
11564         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
11565         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
11566                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
11567         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11568         },
11569         {
11570         .description = "tl2_hdr_type",
11571         .field_bit_size = 2,
11572         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
11573         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
11574                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
11575         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11576         },
11577         {
11578         .description = "tl2_hdr_valid",
11579         .field_bit_size = 1,
11580         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
11581         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
11582                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
11583         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
11584         .spec_operand = {
11585                 BNXT_ULP_SYM_TL2_HDR_VALID_YES,
11586                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
11587                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
11588         },
11589         {
11590         .description = "hrec_next",
11591         .field_bit_size = 1,
11592         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11593         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11594         },
11595         {
11596         .description = "reserved",
11597         .field_bit_size = 9,
11598         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11599         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11600         },
11601         {
11602         .description = "prof_func_id",
11603         .field_bit_size = 7,
11604         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
11605         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
11606                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
11607         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
11608         .spec_operand = {
11609                 (BNXT_ULP_GLB_REGFILE_INDEX_VXLAN_PROF_FUNC_ID >> 8) & 0xff,
11610                 BNXT_ULP_GLB_REGFILE_INDEX_VXLAN_PROF_FUNC_ID & 0xff,
11611                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
11612                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
11613         },
11614         {
11615         .description = "agg_error",
11616         .field_bit_size = 1,
11617         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11618         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11619         },
11620         {
11621         .description = "recycle_cnt",
11622         .field_bit_size = 2,
11623         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
11624         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
11625                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
11626         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11627         },
11628         {
11629         .description = "pkt_type_0",
11630         .field_bit_size = 2,
11631         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11632         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11633         },
11634         {
11635         .description = "pkt_type_1",
11636         .field_bit_size = 2,
11637         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
11638         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
11639                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
11640         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11641         },
11642         {
11643         .description = "valid",
11644         .field_bit_size = 1,
11645         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
11646         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
11647                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
11648         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
11649         .spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
11650                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
11651         },
11652         /* class_tid: 18, wh_plus, table: wm_0 */
11653         {
11654         .description = "wc_profile_id",
11655         .field_bit_size = 8,
11656         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
11657         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
11658                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
11659         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
11660         .spec_operand = {
11661                 (BNXT_ULP_REGFILE_INDEX_WC_PROFILE_ID_0 >> 8) & 0xff,
11662                 BNXT_ULP_REGFILE_INDEX_WC_PROFILE_ID_0 & 0xff,
11663                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
11664                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
11665         },
11666         {
11667         .description = "spare",
11668         .field_bit_size = 10,
11669         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11670         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11671         },
11672         {
11673         .description = "l2_cntxt_id",
11674         .field_bit_size = 10,
11675         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
11676         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
11677                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
11678         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
11679         .spec_operand = {
11680                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
11681                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
11682                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
11683                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
11684         },
11685         {
11686         .description = "tun_type",
11687         .field_bit_size = 4,
11688         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
11689         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
11690                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
11691         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11692         },
11693         {
11694         .description = "others",
11695         .field_bit_size = 128,
11696         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11697         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11698         },
11699         /* class_tid: 19, wh_plus, table: l2_cntxt_tcam_0 */
11700         {
11701         .description = "l2_ivlan_vid",
11702         .field_bit_size = 12,
11703         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11704         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11705         },
11706         {
11707         .description = "l2_ovlan_vid",
11708         .field_bit_size = 12,
11709         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11710         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11711         },
11712         {
11713         .description = "mac0_l2_dst",
11714         .field_bit_size = 48,
11715         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
11716         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
11717                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
11718         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
11719         .spec_operand = {
11720                 (BNXT_ULP_HF19_IDX_O_ETH_DMAC >> 8) & 0xff,
11721                 BNXT_ULP_HF19_IDX_O_ETH_DMAC & 0xff,
11722                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
11723                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
11724         },
11725         {
11726         .description = "svif",
11727         .field_bit_size = 8,
11728         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
11729         .mask_operand = {
11730                 (BNXT_ULP_HF19_IDX_SVIF_INDEX >> 8) & 0xff,
11731                 BNXT_ULP_HF19_IDX_SVIF_INDEX & 0xff,
11732                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
11733                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
11734         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
11735         .spec_operand = {
11736                 (BNXT_ULP_HF19_IDX_SVIF_INDEX >> 8) & 0xff,
11737                 BNXT_ULP_HF19_IDX_SVIF_INDEX & 0xff,
11738                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
11739                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
11740         },
11741         {
11742         .description = "sparif",
11743         .field_bit_size = 4,
11744         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11745         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11746         },
11747         {
11748         .description = "tl2_ivlan_vid",
11749         .field_bit_size = 12,
11750         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11751         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11752         },
11753         {
11754         .description = "tl2_ovlan_vid",
11755         .field_bit_size = 12,
11756         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11757         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11758         },
11759         {
11760         .description = "mac1_tl2_dst",
11761         .field_bit_size = 48,
11762         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11763         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11764         },
11765         {
11766         .description = "l2_num_vtags",
11767         .field_bit_size = 2,
11768         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11769         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11770         },
11771         {
11772         .description = "tl2_num_vtags",
11773         .field_bit_size = 2,
11774         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
11775         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
11776                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
11777         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11778         },
11779         {
11780         .description = "tun_hdr_type",
11781         .field_bit_size = 4,
11782         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
11783         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
11784                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
11785         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11786         },
11787         {
11788         .description = "key_type",
11789         .field_bit_size = 2,
11790         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11791         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11792         },
11793         {
11794         .description = "valid",
11795         .field_bit_size = 1,
11796         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
11797         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
11798                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
11799         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
11800         .spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
11801                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
11802         },
11803         /* class_tid: 19, wh_plus, table: profile_tcam_cache_0 */
11804         {
11805         .description = "recycle",
11806         .field_bit_size = 1,
11807         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11808         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11809         },
11810         {
11811         .description = "prof_func_id",
11812         .field_bit_size = 7,
11813         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11814         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
11815         .spec_operand = {
11816                 (BNXT_ULP_GLB_REGFILE_INDEX_VXLAN_PROF_FUNC_ID >> 8) & 0xff,
11817                 BNXT_ULP_GLB_REGFILE_INDEX_VXLAN_PROF_FUNC_ID & 0xff,
11818                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
11819                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
11820         },
11821         {
11822         .description = "class_tid",
11823         .field_bit_size = 8,
11824         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11825         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11826         },
11827         /* class_tid: 19, wh_plus, table: profile_tcam_0 */
11828         {
11829         .description = "l4_hdr_is_udp_tcp",
11830         .field_bit_size = 1,
11831         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11832         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11833         },
11834         {
11835         .description = "l4_hdr_type",
11836         .field_bit_size = 4,
11837         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11838         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11839         },
11840         {
11841         .description = "l4_hdr_error",
11842         .field_bit_size = 1,
11843         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11844         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11845         },
11846         {
11847         .description = "l4_hdr_valid",
11848         .field_bit_size = 1,
11849         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11850         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11851         },
11852         {
11853         .description = "l3_ipv6_cmp_dst",
11854         .field_bit_size = 1,
11855         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11856         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11857         },
11858         {
11859         .description = "l3_ipv6_cmp_src",
11860         .field_bit_size = 1,
11861         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11862         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11863         },
11864         {
11865         .description = "l3_hdr_isIP",
11866         .field_bit_size = 1,
11867         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11868         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11869         },
11870         {
11871         .description = "l3_hdr_type",
11872         .field_bit_size = 4,
11873         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11874         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11875         },
11876         {
11877         .description = "l3_hdr_error",
11878         .field_bit_size = 1,
11879         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11880         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11881         },
11882         {
11883         .description = "l3_hdr_valid",
11884         .field_bit_size = 1,
11885         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11886         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11887         },
11888         {
11889         .description = "l2_two_vtags",
11890         .field_bit_size = 1,
11891         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11892         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11893         },
11894         {
11895         .description = "l2_vtag_present",
11896         .field_bit_size = 1,
11897         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11898         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11899         },
11900         {
11901         .description = "l2_uc_mc_bc",
11902         .field_bit_size = 2,
11903         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11904         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11905         },
11906         {
11907         .description = "l2_hdr_type",
11908         .field_bit_size = 2,
11909         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11910         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11911         },
11912         {
11913         .description = "l2_hdr_error",
11914         .field_bit_size = 1,
11915         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11916         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11917         },
11918         {
11919         .description = "l2_hdr_valid",
11920         .field_bit_size = 1,
11921         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11922         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11923         },
11924         {
11925         .description = "tun_hdr_flags",
11926         .field_bit_size = 3,
11927         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11928         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11929         },
11930         {
11931         .description = "tun_hdr_type",
11932         .field_bit_size = 4,
11933         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
11934         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
11935                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
11936         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11937         },
11938         {
11939         .description = "tun_hdr_error",
11940         .field_bit_size = 1,
11941         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
11942         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
11943                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
11944         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11945         },
11946         {
11947         .description = "tun_hdr_valid",
11948         .field_bit_size = 1,
11949         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
11950         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
11951                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
11952         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
11953         .spec_operand = {
11954                 BNXT_ULP_SYM_TUN_HDR_VALID_YES,
11955                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
11956                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
11957         },
11958         {
11959         .description = "tl4_hdr_is_udp_tcp",
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 = "tl4_hdr_type",
11966         .field_bit_size = 4,
11967         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
11968         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
11969                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
11970         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
11971         .spec_operand = {
11972                 BNXT_ULP_SYM_TL4_HDR_TYPE_UDP,
11973                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
11974                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
11975         },
11976         {
11977         .description = "tl4_hdr_error",
11978         .field_bit_size = 1,
11979         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
11980         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
11981                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
11982         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11983         },
11984         {
11985         .description = "tl4_hdr_valid",
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_CONSTANT,
11991         .spec_operand = {
11992                 BNXT_ULP_SYM_TL4_HDR_VALID_YES,
11993                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
11994                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
11995         },
11996         {
11997         .description = "tl3_ipv6_cmp_dst",
11998         .field_bit_size = 1,
11999         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12000         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12001         },
12002         {
12003         .description = "tl3_ipv6_cmp_src",
12004         .field_bit_size = 1,
12005         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12006         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12007         },
12008         {
12009         .description = "tl3_hdr_isIP",
12010         .field_bit_size = 1,
12011         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12012         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12013         },
12014         {
12015         .description = "tl3_hdr_type",
12016         .field_bit_size = 4,
12017         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
12018         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
12019                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
12020         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12021         },
12022         {
12023         .description = "tl3_hdr_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 = "tl3_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_TL3_HDR_VALID_YES,
12039                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
12040                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
12041         },
12042         {
12043         .description = "tl2_two_vtags",
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 = "tl2_vtag_present",
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 = "tl2_uc_mc_bc",
12056         .field_bit_size = 2,
12057         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
12058         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
12059                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
12060         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12061         },
12062         {
12063         .description = "tl2_hdr_type",
12064         .field_bit_size = 2,
12065         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
12066         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
12067                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
12068         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12069         },
12070         {
12071         .description = "tl2_hdr_valid",
12072         .field_bit_size = 1,
12073         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
12074         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
12075                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
12076         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
12077         .spec_operand = {
12078                 BNXT_ULP_SYM_TL2_HDR_VALID_YES,
12079                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
12080                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
12081         },
12082         {
12083         .description = "hrec_next",
12084         .field_bit_size = 1,
12085         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12086         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12087         },
12088         {
12089         .description = "reserved",
12090         .field_bit_size = 9,
12091         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12092         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12093         },
12094         {
12095         .description = "prof_func_id",
12096         .field_bit_size = 7,
12097         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
12098         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
12099                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
12100         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
12101         .spec_operand = {
12102                 (BNXT_ULP_GLB_REGFILE_INDEX_VXLAN_PROF_FUNC_ID >> 8) & 0xff,
12103                 BNXT_ULP_GLB_REGFILE_INDEX_VXLAN_PROF_FUNC_ID & 0xff,
12104                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
12105                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
12106         },
12107         {
12108         .description = "agg_error",
12109         .field_bit_size = 1,
12110         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12111         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12112         },
12113         {
12114         .description = "recycle_cnt",
12115         .field_bit_size = 2,
12116         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
12117         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
12118                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
12119         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12120         },
12121         {
12122         .description = "pkt_type_0",
12123         .field_bit_size = 2,
12124         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12125         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12126         },
12127         {
12128         .description = "pkt_type_1",
12129         .field_bit_size = 2,
12130         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
12131         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
12132                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
12133         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12134         },
12135         {
12136         .description = "valid",
12137         .field_bit_size = 1,
12138         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
12139         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
12140                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
12141         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
12142         .spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
12143                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
12144         },
12145         /* class_tid: 19, wh_plus, table: int_em_0 */
12146         {
12147         .description = "spare",
12148         .field_bit_size = 3,
12149         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12150         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12151         },
12152         {
12153         .description = "l2_inner_vid",
12154         .field_bit_size = 12,
12155         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12156         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12157         },
12158         {
12159         .description = "l2_dst_mac",
12160         .field_bit_size = 48,
12161         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12162         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
12163         .spec_operand = {
12164                 (BNXT_ULP_HF19_IDX_I_ETH_DMAC >> 8) & 0xff,
12165                 BNXT_ULP_HF19_IDX_I_ETH_DMAC & 0xff,
12166                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
12167                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
12168         },
12169         {
12170         .description = "tun_id",
12171         .field_bit_size = 24,
12172         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12173         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
12174         .spec_operand = {
12175                 (BNXT_ULP_HF19_IDX_T_VXLAN_VNI >> 8) & 0xff,
12176                 BNXT_ULP_HF19_IDX_T_VXLAN_VNI & 0xff,
12177                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
12178                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
12179         },
12180         {
12181         .description = "tun_flags",
12182         .field_bit_size = 3,
12183         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12184         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12185         },
12186         {
12187         .description = "tun_type",
12188         .field_bit_size = 4,
12189         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12190         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12191         },
12192         {
12193         .description = "l2_cntxt_id",
12194         .field_bit_size = 10,
12195         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12196         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
12197         .spec_operand = {
12198                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
12199                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
12200                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
12201                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
12202         },
12203         {
12204         .description = "em_profile_id",
12205         .field_bit_size = 8,
12206         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12207         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
12208         .spec_operand = {
12209                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
12210                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
12211                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
12212                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
12213         },
12214         /* class_tid: 19, wh_plus, table: ext_em_0 */
12215         {
12216         .description = "spare",
12217         .field_bit_size = 339,
12218         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12219         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12220         },
12221         {
12222         .description = "l2_inner_vid",
12223         .field_bit_size = 12,
12224         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12225         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12226         },
12227         {
12228         .description = "l2_dst_mac",
12229         .field_bit_size = 48,
12230         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12231         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
12232         .spec_operand = {
12233                 (BNXT_ULP_HF19_IDX_I_ETH_DMAC >> 8) & 0xff,
12234                 BNXT_ULP_HF19_IDX_I_ETH_DMAC & 0xff,
12235                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
12236                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
12237         },
12238         {
12239         .description = "tun_id",
12240         .field_bit_size = 24,
12241         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12242         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
12243         .spec_operand = {
12244                 (BNXT_ULP_HF19_IDX_T_VXLAN_VNI >> 8) & 0xff,
12245                 BNXT_ULP_HF19_IDX_T_VXLAN_VNI & 0xff,
12246                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
12247                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
12248         },
12249         {
12250         .description = "tun_flags",
12251         .field_bit_size = 3,
12252         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12253         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12254         },
12255         {
12256         .description = "tun_type",
12257         .field_bit_size = 4,
12258         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12259         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12260         },
12261         {
12262         .description = "l2_cntxt_id",
12263         .field_bit_size = 10,
12264         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12265         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
12266         .spec_operand = {
12267                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
12268                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
12269                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
12270                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
12271         },
12272         {
12273         .description = "em_profile_id",
12274         .field_bit_size = 8,
12275         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12276         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
12277         .spec_operand = {
12278                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
12279                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
12280                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
12281                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
12282         },
12283         /* class_tid: 20, wh_plus, table: l2_cntxt_cache_0 */
12284         {
12285         .description = "svif",
12286         .field_bit_size = 8,
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_HF20_IDX_SVIF_INDEX >> 8) & 0xff,
12291                 BNXT_ULP_HF20_IDX_SVIF_INDEX & 0xff,
12292                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
12293                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
12294         },
12295         /* class_tid: 20, wh_plus, table: l2_cntxt_tcam_0 */
12296         {
12297         .description = "l2_ivlan_vid",
12298         .field_bit_size = 12,
12299         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12300         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12301         },
12302         {
12303         .description = "l2_ovlan_vid",
12304         .field_bit_size = 12,
12305         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12306         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12307         },
12308         {
12309         .description = "mac0_l2_dst",
12310         .field_bit_size = 48,
12311         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12312         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12313         },
12314         {
12315         .description = "svif",
12316         .field_bit_size = 8,
12317         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
12318         .mask_operand = {
12319                 (BNXT_ULP_HF20_IDX_SVIF_INDEX >> 8) & 0xff,
12320                 BNXT_ULP_HF20_IDX_SVIF_INDEX & 0xff,
12321                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
12322                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
12323         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
12324         .spec_operand = {
12325                 (BNXT_ULP_HF20_IDX_SVIF_INDEX >> 8) & 0xff,
12326                 BNXT_ULP_HF20_IDX_SVIF_INDEX & 0xff,
12327                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
12328                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
12329         },
12330         {
12331         .description = "sparif",
12332         .field_bit_size = 4,
12333         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12334         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12335         },
12336         {
12337         .description = "tl2_ivlan_vid",
12338         .field_bit_size = 12,
12339         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12340         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12341         },
12342         {
12343         .description = "tl2_ovlan_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 = "mac1_tl2_dst",
12350         .field_bit_size = 48,
12351         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12352         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12353         },
12354         {
12355         .description = "l2_num_vtags",
12356         .field_bit_size = 2,
12357         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12358         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12359         },
12360         {
12361         .description = "tl2_num_vtags",
12362         .field_bit_size = 2,
12363         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12364         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12365         },
12366         {
12367         .description = "tun_hdr_type",
12368         .field_bit_size = 4,
12369         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
12370         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
12371                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
12372         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
12373         .spec_operand = {
12374                 BNXT_ULP_SYM_TUN_HDR_TYPE_NONE,
12375                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
12376                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
12377         },
12378         {
12379         .description = "key_type",
12380         .field_bit_size = 2,
12381         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12382         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12383         },
12384         {
12385         .description = "valid",
12386         .field_bit_size = 1,
12387         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
12388         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
12389                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
12390         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
12391         .spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
12392                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
12393         },
12394         /* class_tid: 20, wh_plus, table: profile_tcam_cache_0 */
12395         {
12396         .description = "recycle",
12397         .field_bit_size = 1,
12398         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12399         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12400         },
12401         {
12402         .description = "prof_func_id",
12403         .field_bit_size = 7,
12404         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12405         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
12406         .spec_operand = {
12407                 (BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID >> 8) & 0xff,
12408                 BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID & 0xff,
12409                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
12410                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
12411         },
12412         {
12413         .description = "class_tid",
12414         .field_bit_size = 8,
12415         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12416         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
12417         .spec_operand = {
12418                 (BNXT_ULP_REGFILE_INDEX_CLASS_TID >> 8) & 0xff,
12419                 BNXT_ULP_REGFILE_INDEX_CLASS_TID & 0xff,
12420                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
12421                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
12422         },
12423         /* class_tid: 20, wh_plus, table: profile_tcam_0 */
12424         {
12425         .description = "l4_hdr_is_udp_tcp",
12426         .field_bit_size = 1,
12427         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12428         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12429         },
12430         {
12431         .description = "l4_hdr_type",
12432         .field_bit_size = 4,
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 = {
12438                 BNXT_ULP_SYM_L4_HDR_TYPE_UDP,
12439                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
12440                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
12441         },
12442         {
12443         .description = "l4_hdr_error",
12444         .field_bit_size = 1,
12445         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
12446         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
12447                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
12448         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12449         },
12450         {
12451         .description = "l4_hdr_valid",
12452         .field_bit_size = 1,
12453         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
12454         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
12455                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
12456         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
12457         .spec_operand = {
12458                 BNXT_ULP_SYM_L4_HDR_VALID_YES,
12459                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
12460                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
12461         },
12462         {
12463         .description = "l3_ipv6_cmp_dst",
12464         .field_bit_size = 1,
12465         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12466         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12467         },
12468         {
12469         .description = "l3_ipv6_cmp_src",
12470         .field_bit_size = 1,
12471         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12472         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12473         },
12474         {
12475         .description = "l3_hdr_isIP",
12476         .field_bit_size = 1,
12477         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12478         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12479         },
12480         {
12481         .description = "l3_hdr_type",
12482         .field_bit_size = 4,
12483         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
12484         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
12485                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
12486         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12487         },
12488         {
12489         .description = "l3_hdr_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 = "l3_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_L3_HDR_VALID_YES,
12505                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
12506                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
12507         },
12508         {
12509         .description = "l2_two_vtags",
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 = "l2_vtag_present",
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 = "l2_uc_mc_bc",
12522         .field_bit_size = 2,
12523         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12524         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12525         },
12526         {
12527         .description = "l2_hdr_type",
12528         .field_bit_size = 2,
12529         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
12530         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
12531                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
12532         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12533         },
12534         {
12535         .description = "l2_hdr_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 = "l2_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_L2_HDR_VALID_YES,
12551                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
12552                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
12553         },
12554         {
12555         .description = "tun_hdr_flags",
12556         .field_bit_size = 3,
12557         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12558         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12559         },
12560         {
12561         .description = "tun_hdr_type",
12562         .field_bit_size = 4,
12563         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12564         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12565         },
12566         {
12567         .description = "tun_hdr_error",
12568         .field_bit_size = 1,
12569         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12570         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12571         },
12572         {
12573         .description = "tun_hdr_valid",
12574         .field_bit_size = 1,
12575         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12576         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12577         },
12578         {
12579         .description = "tl4_hdr_is_udp_tcp",
12580         .field_bit_size = 1,
12581         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12582         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12583         },
12584         {
12585         .description = "tl4_hdr_type",
12586         .field_bit_size = 4,
12587         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12588         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12589         },
12590         {
12591         .description = "tl4_hdr_error",
12592         .field_bit_size = 1,
12593         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12594         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12595         },
12596         {
12597         .description = "tl4_hdr_valid",
12598         .field_bit_size = 1,
12599         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12600         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12601         },
12602         {
12603         .description = "tl3_ipv6_cmp_dst",
12604         .field_bit_size = 1,
12605         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12606         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12607         },
12608         {
12609         .description = "tl3_ipv6_cmp_src",
12610         .field_bit_size = 1,
12611         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12612         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12613         },
12614         {
12615         .description = "tl3_hdr_isIP",
12616         .field_bit_size = 1,
12617         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12618         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12619         },
12620         {
12621         .description = "tl3_hdr_type",
12622         .field_bit_size = 4,
12623         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12624         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12625         },
12626         {
12627         .description = "tl3_hdr_error",
12628         .field_bit_size = 1,
12629         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12630         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12631         },
12632         {
12633         .description = "tl3_hdr_valid",
12634         .field_bit_size = 1,
12635         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12636         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12637         },
12638         {
12639         .description = "tl2_two_vtags",
12640         .field_bit_size = 1,
12641         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12642         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12643         },
12644         {
12645         .description = "tl2_vtag_present",
12646         .field_bit_size = 1,
12647         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12648         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12649         },
12650         {
12651         .description = "tl2_uc_mc_bc",
12652         .field_bit_size = 2,
12653         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12654         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12655         },
12656         {
12657         .description = "tl2_hdr_type",
12658         .field_bit_size = 2,
12659         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12660         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12661         },
12662         {
12663         .description = "tl2_hdr_valid",
12664         .field_bit_size = 1,
12665         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12666         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12667         },
12668         {
12669         .description = "hrec_next",
12670         .field_bit_size = 1,
12671         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12672         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12673         },
12674         {
12675         .description = "reserved",
12676         .field_bit_size = 9,
12677         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12678         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12679         },
12680         {
12681         .description = "prof_func_id",
12682         .field_bit_size = 7,
12683         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
12684         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
12685                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
12686         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
12687         .spec_operand = {
12688                 (BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID >> 8) & 0xff,
12689                 BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID & 0xff,
12690                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
12691                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
12692         },
12693         {
12694         .description = "agg_error",
12695         .field_bit_size = 1,
12696         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12697         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12698         },
12699         {
12700         .description = "recycle_cnt",
12701         .field_bit_size = 2,
12702         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
12703         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
12704                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
12705         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12706         },
12707         {
12708         .description = "pkt_type_0",
12709         .field_bit_size = 2,
12710         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12711         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12712         },
12713         {
12714         .description = "pkt_type_1",
12715         .field_bit_size = 2,
12716         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
12717         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
12718                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
12719         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12720         },
12721         {
12722         .description = "valid",
12723         .field_bit_size = 1,
12724         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
12725         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
12726                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
12727         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
12728         .spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
12729                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
12730         },
12731         /* class_tid: 20, wh_plus, table: ext_em_0 */
12732         {
12733         .description = "spare",
12734         .field_bit_size = 251,
12735         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12736         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12737         },
12738         {
12739         .description = "local_cos",
12740         .field_bit_size = 3,
12741         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12742         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12743         },
12744         {
12745         .description = "l4_dst_port",
12746         .field_bit_size = 16,
12747         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12748         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
12749         .spec_operand = {
12750                 (BNXT_ULP_HF20_IDX_O_UDP_DST_PORT >> 8) & 0xff,
12751                 BNXT_ULP_HF20_IDX_O_UDP_DST_PORT & 0xff,
12752                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
12753                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
12754         },
12755         {
12756         .description = "l4_src_port",
12757         .field_bit_size = 16,
12758         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12759         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
12760         .spec_operand = {
12761                 (BNXT_ULP_HF20_IDX_O_UDP_SRC_PORT >> 8) & 0xff,
12762                 BNXT_ULP_HF20_IDX_O_UDP_SRC_PORT & 0xff,
12763                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
12764                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
12765         },
12766         {
12767         .description = "ip_proto",
12768         .field_bit_size = 8,
12769         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12770         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
12771         .spec_operand = {
12772                 BNXT_ULP_SYM_IP_PROTO_UDP,
12773                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
12774                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
12775         },
12776         {
12777         .description = "ipv4_dst_addr",
12778         .field_bit_size = 32,
12779         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12780         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
12781         .spec_operand = {
12782                 (BNXT_ULP_HF20_IDX_O_IPV4_DST_ADDR >> 8) & 0xff,
12783                 BNXT_ULP_HF20_IDX_O_IPV4_DST_ADDR & 0xff,
12784                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
12785                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
12786         },
12787         {
12788         .description = "ipv4_src_addr",
12789         .field_bit_size = 32,
12790         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12791         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
12792         .spec_operand = {
12793                 (BNXT_ULP_HF20_IDX_O_IPV4_SRC_ADDR >> 8) & 0xff,
12794                 BNXT_ULP_HF20_IDX_O_IPV4_SRC_ADDR & 0xff,
12795                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
12796                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
12797         },
12798         {
12799         .description = "l2_src_mac",
12800         .field_bit_size = 48,
12801         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12802         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12803         },
12804         {
12805         .description = "tun_id",
12806         .field_bit_size = 24,
12807         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12808         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12809         },
12810         {
12811         .description = "l2_cntxt_id",
12812         .field_bit_size = 10,
12813         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12814         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
12815         .spec_operand = {
12816                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
12817                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
12818                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
12819                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
12820         },
12821         {
12822         .description = "em_profile_id",
12823         .field_bit_size = 8,
12824         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12825         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
12826         .spec_operand = {
12827                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
12828                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
12829                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
12830                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
12831         },
12832         /* class_tid: 20, wh_plus, table: int_em_0 */
12833         {
12834         .description = "spare",
12835         .field_bit_size = 3,
12836         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12837         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12838         },
12839         {
12840         .description = "local_cos",
12841         .field_bit_size = 3,
12842         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12843         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12844         },
12845         {
12846         .description = "l4_dst_port",
12847         .field_bit_size = 16,
12848         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12849         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
12850         .spec_operand = {
12851                 (BNXT_ULP_HF20_IDX_O_UDP_DST_PORT >> 8) & 0xff,
12852                 BNXT_ULP_HF20_IDX_O_UDP_DST_PORT & 0xff,
12853                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
12854                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
12855         },
12856         {
12857         .description = "l4_src_port",
12858         .field_bit_size = 16,
12859         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12860         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
12861         .spec_operand = {
12862                 (BNXT_ULP_HF20_IDX_O_UDP_SRC_PORT >> 8) & 0xff,
12863                 BNXT_ULP_HF20_IDX_O_UDP_SRC_PORT & 0xff,
12864                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
12865                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
12866         },
12867         {
12868         .description = "ip_proto",
12869         .field_bit_size = 8,
12870         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12871         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
12872         .spec_operand = {
12873                 BNXT_ULP_SYM_IP_PROTO_UDP,
12874                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
12875                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
12876         },
12877         {
12878         .description = "ipv4_dst_addr",
12879         .field_bit_size = 32,
12880         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12881         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
12882         .spec_operand = {
12883                 (BNXT_ULP_HF20_IDX_O_IPV4_DST_ADDR >> 8) & 0xff,
12884                 BNXT_ULP_HF20_IDX_O_IPV4_DST_ADDR & 0xff,
12885                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
12886                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
12887         },
12888         {
12889         .description = "ipv4_src_addr",
12890         .field_bit_size = 32,
12891         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12892         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
12893         .spec_operand = {
12894                 (BNXT_ULP_HF20_IDX_O_IPV4_SRC_ADDR >> 8) & 0xff,
12895                 BNXT_ULP_HF20_IDX_O_IPV4_SRC_ADDR & 0xff,
12896                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
12897                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
12898         },
12899         {
12900         .description = "l2_src_mac",
12901         .field_bit_size = 48,
12902         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12903         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12904         },
12905         {
12906         .description = "tun_id",
12907         .field_bit_size = 24,
12908         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12909         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12910         },
12911         {
12912         .description = "l2_cntxt_id",
12913         .field_bit_size = 10,
12914         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12915         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
12916         .spec_operand = {
12917                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
12918                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
12919                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
12920                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
12921         },
12922         {
12923         .description = "em_profile_id",
12924         .field_bit_size = 8,
12925         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12926         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
12927         .spec_operand = {
12928                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
12929                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
12930                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
12931                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
12932         },
12933         /* class_tid: 21, wh_plus, table: l2_cntxt_cache_0 */
12934         {
12935         .description = "svif",
12936         .field_bit_size = 8,
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_HF21_IDX_SVIF_INDEX >> 8) & 0xff,
12941                 BNXT_ULP_HF21_IDX_SVIF_INDEX & 0xff,
12942                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
12943                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
12944         },
12945         /* class_tid: 21, wh_plus, table: l2_cntxt_tcam_0 */
12946         {
12947         .description = "l2_ivlan_vid",
12948         .field_bit_size = 12,
12949         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12950         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12951         },
12952         {
12953         .description = "l2_ovlan_vid",
12954         .field_bit_size = 12,
12955         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12956         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12957         },
12958         {
12959         .description = "mac0_l2_dst",
12960         .field_bit_size = 48,
12961         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12962         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12963         },
12964         {
12965         .description = "svif",
12966         .field_bit_size = 8,
12967         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
12968         .mask_operand = {
12969                 (BNXT_ULP_HF21_IDX_SVIF_INDEX >> 8) & 0xff,
12970                 BNXT_ULP_HF21_IDX_SVIF_INDEX & 0xff,
12971                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
12972                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
12973         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
12974         .spec_operand = {
12975                 (BNXT_ULP_HF21_IDX_SVIF_INDEX >> 8) & 0xff,
12976                 BNXT_ULP_HF21_IDX_SVIF_INDEX & 0xff,
12977                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
12978                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
12979         },
12980         {
12981         .description = "sparif",
12982         .field_bit_size = 4,
12983         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12984         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12985         },
12986         {
12987         .description = "tl2_ivlan_vid",
12988         .field_bit_size = 12,
12989         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12990         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12991         },
12992         {
12993         .description = "tl2_ovlan_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 = "mac1_tl2_dst",
13000         .field_bit_size = 48,
13001         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13002         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13003         },
13004         {
13005         .description = "l2_num_vtags",
13006         .field_bit_size = 2,
13007         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13008         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13009         },
13010         {
13011         .description = "tl2_num_vtags",
13012         .field_bit_size = 2,
13013         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13014         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13015         },
13016         {
13017         .description = "tun_hdr_type",
13018         .field_bit_size = 4,
13019         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
13020         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
13021                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
13022         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
13023         .spec_operand = {
13024                 BNXT_ULP_SYM_TUN_HDR_TYPE_NONE,
13025                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
13026                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
13027         },
13028         {
13029         .description = "key_type",
13030         .field_bit_size = 2,
13031         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13032         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13033         },
13034         {
13035         .description = "valid",
13036         .field_bit_size = 1,
13037         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
13038         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
13039                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
13040         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
13041         .spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
13042                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
13043         },
13044         /* class_tid: 21, wh_plus, table: profile_tcam_cache_0 */
13045         {
13046         .description = "recycle",
13047         .field_bit_size = 1,
13048         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13049         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13050         },
13051         {
13052         .description = "prof_func_id",
13053         .field_bit_size = 7,
13054         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13055         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
13056         .spec_operand = {
13057                 (BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID >> 8) & 0xff,
13058                 BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID & 0xff,
13059                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
13060                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
13061         },
13062         {
13063         .description = "class_tid",
13064         .field_bit_size = 8,
13065         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13066         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
13067         .spec_operand = {
13068                 (BNXT_ULP_REGFILE_INDEX_CLASS_TID >> 8) & 0xff,
13069                 BNXT_ULP_REGFILE_INDEX_CLASS_TID & 0xff,
13070                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
13071                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
13072         },
13073         /* class_tid: 21, wh_plus, table: profile_tcam_0 */
13074         {
13075         .description = "l4_hdr_is_udp_tcp",
13076         .field_bit_size = 1,
13077         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13078         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13079         },
13080         {
13081         .description = "l4_hdr_type",
13082         .field_bit_size = 4,
13083         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
13084         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
13085                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
13086         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13087         },
13088         {
13089         .description = "l4_hdr_error",
13090         .field_bit_size = 1,
13091         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
13092         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
13093                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
13094         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13095         },
13096         {
13097         .description = "l4_hdr_valid",
13098         .field_bit_size = 1,
13099         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
13100         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
13101                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
13102         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
13103         .spec_operand = {
13104                 BNXT_ULP_SYM_L4_HDR_VALID_YES,
13105                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
13106                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
13107         },
13108         {
13109         .description = "l3_ipv6_cmp_dst",
13110         .field_bit_size = 1,
13111         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13112         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13113         },
13114         {
13115         .description = "l3_ipv6_cmp_src",
13116         .field_bit_size = 1,
13117         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13118         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13119         },
13120         {
13121         .description = "l3_hdr_isIP",
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 = "l3_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 = "l3_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 = "l3_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_L3_HDR_VALID_YES,
13151                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
13152                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
13153         },
13154         {
13155         .description = "l2_two_vtags",
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 = "l2_vtag_present",
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 = "l2_uc_mc_bc",
13168         .field_bit_size = 2,
13169         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13170         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13171         },
13172         {
13173         .description = "l2_hdr_type",
13174         .field_bit_size = 2,
13175         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
13176         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
13177                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
13178         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13179         },
13180         {
13181         .description = "l2_hdr_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 = "l2_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_L2_HDR_VALID_YES,
13197                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
13198                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
13199         },
13200         {
13201         .description = "tun_hdr_flags",
13202         .field_bit_size = 3,
13203         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13204         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13205         },
13206         {
13207         .description = "tun_hdr_type",
13208         .field_bit_size = 4,
13209         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13210         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13211         },
13212         {
13213         .description = "tun_hdr_error",
13214         .field_bit_size = 1,
13215         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13216         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13217         },
13218         {
13219         .description = "tun_hdr_valid",
13220         .field_bit_size = 1,
13221         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13222         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13223         },
13224         {
13225         .description = "tl4_hdr_is_udp_tcp",
13226         .field_bit_size = 1,
13227         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13228         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13229         },
13230         {
13231         .description = "tl4_hdr_type",
13232         .field_bit_size = 4,
13233         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13234         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13235         },
13236         {
13237         .description = "tl4_hdr_error",
13238         .field_bit_size = 1,
13239         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13240         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13241         },
13242         {
13243         .description = "tl4_hdr_valid",
13244         .field_bit_size = 1,
13245         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13246         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13247         },
13248         {
13249         .description = "tl3_ipv6_cmp_dst",
13250         .field_bit_size = 1,
13251         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13252         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13253         },
13254         {
13255         .description = "tl3_ipv6_cmp_src",
13256         .field_bit_size = 1,
13257         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13258         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13259         },
13260         {
13261         .description = "tl3_hdr_isIP",
13262         .field_bit_size = 1,
13263         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13264         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13265         },
13266         {
13267         .description = "tl3_hdr_type",
13268         .field_bit_size = 4,
13269         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13270         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13271         },
13272         {
13273         .description = "tl3_hdr_error",
13274         .field_bit_size = 1,
13275         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13276         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13277         },
13278         {
13279         .description = "tl3_hdr_valid",
13280         .field_bit_size = 1,
13281         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13282         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13283         },
13284         {
13285         .description = "tl2_two_vtags",
13286         .field_bit_size = 1,
13287         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13288         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13289         },
13290         {
13291         .description = "tl2_vtag_present",
13292         .field_bit_size = 1,
13293         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13294         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13295         },
13296         {
13297         .description = "tl2_uc_mc_bc",
13298         .field_bit_size = 2,
13299         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13300         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13301         },
13302         {
13303         .description = "tl2_hdr_type",
13304         .field_bit_size = 2,
13305         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13306         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13307         },
13308         {
13309         .description = "tl2_hdr_valid",
13310         .field_bit_size = 1,
13311         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13312         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13313         },
13314         {
13315         .description = "hrec_next",
13316         .field_bit_size = 1,
13317         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13318         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13319         },
13320         {
13321         .description = "reserved",
13322         .field_bit_size = 9,
13323         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13324         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13325         },
13326         {
13327         .description = "prof_func_id",
13328         .field_bit_size = 7,
13329         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
13330         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
13331                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
13332         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
13333         .spec_operand = {
13334                 (BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID >> 8) & 0xff,
13335                 BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID & 0xff,
13336                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
13337                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
13338         },
13339         {
13340         .description = "agg_error",
13341         .field_bit_size = 1,
13342         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13343         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13344         },
13345         {
13346         .description = "recycle_cnt",
13347         .field_bit_size = 2,
13348         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
13349         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
13350                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
13351         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13352         },
13353         {
13354         .description = "pkt_type_0",
13355         .field_bit_size = 2,
13356         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13357         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13358         },
13359         {
13360         .description = "pkt_type_1",
13361         .field_bit_size = 2,
13362         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
13363         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
13364                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
13365         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13366         },
13367         {
13368         .description = "valid",
13369         .field_bit_size = 1,
13370         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
13371         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
13372                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
13373         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
13374         .spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
13375                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
13376         },
13377         /* class_tid: 21, wh_plus, table: ext_em_0 */
13378         {
13379         .description = "spare",
13380         .field_bit_size = 251,
13381         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13382         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13383         },
13384         {
13385         .description = "local_cos",
13386         .field_bit_size = 3,
13387         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13388         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13389         },
13390         {
13391         .description = "l4_dst_port",
13392         .field_bit_size = 16,
13393         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13394         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
13395         .spec_operand = {
13396                 (BNXT_ULP_HF21_IDX_O_TCP_DST_PORT >> 8) & 0xff,
13397                 BNXT_ULP_HF21_IDX_O_TCP_DST_PORT & 0xff,
13398                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
13399                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
13400         },
13401         {
13402         .description = "l4_src_port",
13403         .field_bit_size = 16,
13404         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13405         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
13406         .spec_operand = {
13407                 (BNXT_ULP_HF21_IDX_O_TCP_SRC_PORT >> 8) & 0xff,
13408                 BNXT_ULP_HF21_IDX_O_TCP_SRC_PORT & 0xff,
13409                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
13410                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
13411         },
13412         {
13413         .description = "ip_proto",
13414         .field_bit_size = 8,
13415         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13416         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
13417         .spec_operand = {
13418                 BNXT_ULP_SYM_IP_PROTO_TCP,
13419                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
13420                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
13421         },
13422         {
13423         .description = "ipv4_dst_addr",
13424         .field_bit_size = 32,
13425         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13426         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
13427         .spec_operand = {
13428                 (BNXT_ULP_HF21_IDX_O_IPV4_DST_ADDR >> 8) & 0xff,
13429                 BNXT_ULP_HF21_IDX_O_IPV4_DST_ADDR & 0xff,
13430                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
13431                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
13432         },
13433         {
13434         .description = "ipv4_src_addr",
13435         .field_bit_size = 32,
13436         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13437         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
13438         .spec_operand = {
13439                 (BNXT_ULP_HF21_IDX_O_IPV4_SRC_ADDR >> 8) & 0xff,
13440                 BNXT_ULP_HF21_IDX_O_IPV4_SRC_ADDR & 0xff,
13441                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
13442                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
13443         },
13444         {
13445         .description = "l2_src_mac",
13446         .field_bit_size = 48,
13447         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13448         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13449         },
13450         {
13451         .description = "tun_id",
13452         .field_bit_size = 24,
13453         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13454         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13455         },
13456         {
13457         .description = "l2_cntxt_id",
13458         .field_bit_size = 10,
13459         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13460         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
13461         .spec_operand = {
13462                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
13463                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
13464                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
13465                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
13466         },
13467         {
13468         .description = "em_profile_id",
13469         .field_bit_size = 8,
13470         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13471         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
13472         .spec_operand = {
13473                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
13474                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
13475                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
13476                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
13477         },
13478         /* class_tid: 21, wh_plus, table: int_em_0 */
13479         {
13480         .description = "spare",
13481         .field_bit_size = 3,
13482         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13483         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13484         },
13485         {
13486         .description = "local_cos",
13487         .field_bit_size = 3,
13488         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13489         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13490         },
13491         {
13492         .description = "l4_dst_port",
13493         .field_bit_size = 16,
13494         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13495         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
13496         .spec_operand = {
13497                 (BNXT_ULP_HF21_IDX_O_TCP_DST_PORT >> 8) & 0xff,
13498                 BNXT_ULP_HF21_IDX_O_TCP_DST_PORT & 0xff,
13499                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
13500                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
13501         },
13502         {
13503         .description = "l4_src_port",
13504         .field_bit_size = 16,
13505         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13506         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
13507         .spec_operand = {
13508                 (BNXT_ULP_HF21_IDX_O_TCP_SRC_PORT >> 8) & 0xff,
13509                 BNXT_ULP_HF21_IDX_O_TCP_SRC_PORT & 0xff,
13510                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
13511                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
13512         },
13513         {
13514         .description = "ip_proto",
13515         .field_bit_size = 8,
13516         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13517         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
13518         .spec_operand = {
13519                 BNXT_ULP_SYM_IP_PROTO_TCP,
13520                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
13521                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
13522         },
13523         {
13524         .description = "ipv4_dst_addr",
13525         .field_bit_size = 32,
13526         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13527         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
13528         .spec_operand = {
13529                 (BNXT_ULP_HF21_IDX_O_IPV4_DST_ADDR >> 8) & 0xff,
13530                 BNXT_ULP_HF21_IDX_O_IPV4_DST_ADDR & 0xff,
13531                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
13532                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
13533         },
13534         {
13535         .description = "ipv4_src_addr",
13536         .field_bit_size = 32,
13537         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13538         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
13539         .spec_operand = {
13540                 (BNXT_ULP_HF21_IDX_O_IPV4_SRC_ADDR >> 8) & 0xff,
13541                 BNXT_ULP_HF21_IDX_O_IPV4_SRC_ADDR & 0xff,
13542                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
13543                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
13544         },
13545         {
13546         .description = "l2_src_mac",
13547         .field_bit_size = 48,
13548         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13549         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13550         },
13551         {
13552         .description = "tun_id",
13553         .field_bit_size = 24,
13554         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13555         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13556         },
13557         {
13558         .description = "l2_cntxt_id",
13559         .field_bit_size = 10,
13560         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13561         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
13562         .spec_operand = {
13563                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
13564                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
13565                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
13566                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
13567         },
13568         {
13569         .description = "em_profile_id",
13570         .field_bit_size = 8,
13571         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13572         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
13573         .spec_operand = {
13574                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
13575                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
13576                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
13577                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
13578         },
13579         /* class_tid: 22, wh_plus, table: l2_cntxt_cache_0 */
13580         {
13581         .description = "svif",
13582         .field_bit_size = 8,
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_HF22_IDX_SVIF_INDEX >> 8) & 0xff,
13587                 BNXT_ULP_HF22_IDX_SVIF_INDEX & 0xff,
13588                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
13589                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
13590         },
13591         /* class_tid: 22, wh_plus, table: l2_cntxt_0 */
13592         {
13593         .description = "l2_ivlan_vid",
13594         .field_bit_size = 12,
13595         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13596         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13597         },
13598         {
13599         .description = "l2_ovlan_vid",
13600         .field_bit_size = 12,
13601         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13602         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13603         },
13604         {
13605         .description = "mac0_l2_dst",
13606         .field_bit_size = 48,
13607         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13608         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13609         },
13610         {
13611         .description = "svif",
13612         .field_bit_size = 8,
13613         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
13614         .mask_operand = {
13615                 (BNXT_ULP_HF22_IDX_SVIF_INDEX >> 8) & 0xff,
13616                 BNXT_ULP_HF22_IDX_SVIF_INDEX & 0xff,
13617                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
13618                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
13619         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
13620         .spec_operand = {
13621                 (BNXT_ULP_HF22_IDX_SVIF_INDEX >> 8) & 0xff,
13622                 BNXT_ULP_HF22_IDX_SVIF_INDEX & 0xff,
13623                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
13624                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
13625         },
13626         {
13627         .description = "sparif",
13628         .field_bit_size = 4,
13629         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13630         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13631         },
13632         {
13633         .description = "tl2_ivlan_vid",
13634         .field_bit_size = 12,
13635         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13636         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13637         },
13638         {
13639         .description = "tl2_ovlan_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 = "mac1_tl2_dst",
13646         .field_bit_size = 48,
13647         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13648         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13649         },
13650         {
13651         .description = "l2_num_vtags",
13652         .field_bit_size = 2,
13653         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13654         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13655         },
13656         {
13657         .description = "tl2_num_vtags",
13658         .field_bit_size = 2,
13659         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13660         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13661         },
13662         {
13663         .description = "tun_hdr_type",
13664         .field_bit_size = 4,
13665         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
13666         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
13667                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
13668         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
13669         .spec_operand = {
13670                 BNXT_ULP_SYM_TUN_HDR_TYPE_NONE,
13671                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
13672                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
13673         },
13674         {
13675         .description = "key_type",
13676         .field_bit_size = 2,
13677         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13678         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13679         },
13680         {
13681         .description = "valid",
13682         .field_bit_size = 1,
13683         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
13684         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
13685                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
13686         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
13687         .spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
13688                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
13689         },
13690         /* class_tid: 22, wh_plus, table: profile_tcam_cache_0 */
13691         {
13692         .description = "recycle",
13693         .field_bit_size = 1,
13694         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13695         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13696         },
13697         {
13698         .description = "prof_func_id",
13699         .field_bit_size = 7,
13700         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13701         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
13702         .spec_operand = {
13703                 (BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID >> 8) & 0xff,
13704                 BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID & 0xff,
13705                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
13706                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
13707         },
13708         {
13709         .description = "class_tid",
13710         .field_bit_size = 8,
13711         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13712         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
13713         .spec_operand = {
13714                 (BNXT_ULP_REGFILE_INDEX_CLASS_TID >> 8) & 0xff,
13715                 BNXT_ULP_REGFILE_INDEX_CLASS_TID & 0xff,
13716                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
13717                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
13718         },
13719         /* class_tid: 22, wh_plus, table: profile_tcam_0 */
13720         {
13721         .description = "l4_hdr_is_udp_tcp",
13722         .field_bit_size = 1,
13723         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13724         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13725         },
13726         {
13727         .description = "l4_hdr_type",
13728         .field_bit_size = 4,
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 = {
13734                 BNXT_ULP_SYM_L4_HDR_TYPE_UDP,
13735                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
13736                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
13737         },
13738         {
13739         .description = "l4_hdr_error",
13740         .field_bit_size = 1,
13741         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
13742         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
13743                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
13744         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13745         },
13746         {
13747         .description = "l4_hdr_valid",
13748         .field_bit_size = 1,
13749         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
13750         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
13751                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
13752         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
13753         .spec_operand = {
13754                 BNXT_ULP_SYM_L4_HDR_VALID_YES,
13755                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
13756                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
13757         },
13758         {
13759         .description = "l3_ipv6_cmp_dst",
13760         .field_bit_size = 1,
13761         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13762         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13763         },
13764         {
13765         .description = "l3_ipv6_cmp_src",
13766         .field_bit_size = 1,
13767         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13768         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13769         },
13770         {
13771         .description = "l3_hdr_isIP",
13772         .field_bit_size = 1,
13773         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13774         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13775         },
13776         {
13777         .description = "l3_hdr_type",
13778         .field_bit_size = 4,
13779         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
13780         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
13781                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
13782         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
13783         .spec_operand = {
13784                 BNXT_ULP_SYM_L3_HDR_TYPE_IPV6,
13785                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
13786                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
13787         },
13788         {
13789         .description = "l3_hdr_error",
13790         .field_bit_size = 1,
13791         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
13792         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
13793                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
13794         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13795         },
13796         {
13797         .description = "l3_hdr_valid",
13798         .field_bit_size = 1,
13799         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
13800         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
13801                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
13802         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
13803         .spec_operand = {
13804                 BNXT_ULP_SYM_L3_HDR_VALID_YES,
13805                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
13806                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
13807         },
13808         {
13809         .description = "l2_two_vtags",
13810         .field_bit_size = 1,
13811         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13812         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13813         },
13814         {
13815         .description = "l2_vtag_present",
13816         .field_bit_size = 1,
13817         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13818         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13819         },
13820         {
13821         .description = "l2_uc_mc_bc",
13822         .field_bit_size = 2,
13823         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13824         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13825         },
13826         {
13827         .description = "l2_hdr_type",
13828         .field_bit_size = 2,
13829         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
13830         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
13831                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
13832         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13833         },
13834         {
13835         .description = "l2_hdr_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 = "l2_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_L2_HDR_VALID_YES,
13851                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
13852                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
13853         },
13854         {
13855         .description = "tun_hdr_flags",
13856         .field_bit_size = 3,
13857         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13858         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13859         },
13860         {
13861         .description = "tun_hdr_type",
13862         .field_bit_size = 4,
13863         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13864         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13865         },
13866         {
13867         .description = "tun_hdr_error",
13868         .field_bit_size = 1,
13869         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13870         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13871         },
13872         {
13873         .description = "tun_hdr_valid",
13874         .field_bit_size = 1,
13875         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13876         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13877         },
13878         {
13879         .description = "tl4_hdr_is_udp_tcp",
13880         .field_bit_size = 1,
13881         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13882         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13883         },
13884         {
13885         .description = "tl4_hdr_type",
13886         .field_bit_size = 4,
13887         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13888         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13889         },
13890         {
13891         .description = "tl4_hdr_error",
13892         .field_bit_size = 1,
13893         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13894         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13895         },
13896         {
13897         .description = "tl4_hdr_valid",
13898         .field_bit_size = 1,
13899         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13900         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13901         },
13902         {
13903         .description = "tl3_ipv6_cmp_dst",
13904         .field_bit_size = 1,
13905         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13906         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13907         },
13908         {
13909         .description = "tl3_ipv6_cmp_src",
13910         .field_bit_size = 1,
13911         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13912         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13913         },
13914         {
13915         .description = "tl3_hdr_isIP",
13916         .field_bit_size = 1,
13917         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13918         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13919         },
13920         {
13921         .description = "tl3_hdr_type",
13922         .field_bit_size = 4,
13923         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13924         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13925         },
13926         {
13927         .description = "tl3_hdr_error",
13928         .field_bit_size = 1,
13929         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13930         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13931         },
13932         {
13933         .description = "tl3_hdr_valid",
13934         .field_bit_size = 1,
13935         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13936         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13937         },
13938         {
13939         .description = "tl2_two_vtags",
13940         .field_bit_size = 1,
13941         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13942         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13943         },
13944         {
13945         .description = "tl2_vtag_present",
13946         .field_bit_size = 1,
13947         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13948         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13949         },
13950         {
13951         .description = "tl2_uc_mc_bc",
13952         .field_bit_size = 2,
13953         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13954         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13955         },
13956         {
13957         .description = "tl2_hdr_type",
13958         .field_bit_size = 2,
13959         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13960         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13961         },
13962         {
13963         .description = "tl2_hdr_valid",
13964         .field_bit_size = 1,
13965         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13966         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13967         },
13968         {
13969         .description = "hrec_next",
13970         .field_bit_size = 1,
13971         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13972         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13973         },
13974         {
13975         .description = "reserved",
13976         .field_bit_size = 9,
13977         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13978         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13979         },
13980         {
13981         .description = "prof_func_id",
13982         .field_bit_size = 7,
13983         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
13984         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
13985                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
13986         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
13987         .spec_operand = {
13988                 (BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID >> 8) & 0xff,
13989                 BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID & 0xff,
13990                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
13991                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
13992         },
13993         {
13994         .description = "agg_error",
13995         .field_bit_size = 1,
13996         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13997         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13998         },
13999         {
14000         .description = "recycle_cnt",
14001         .field_bit_size = 2,
14002         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
14003         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
14004                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
14005         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14006         },
14007         {
14008         .description = "pkt_type_0",
14009         .field_bit_size = 2,
14010         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14011         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14012         },
14013         {
14014         .description = "pkt_type_1",
14015         .field_bit_size = 2,
14016         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
14017         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
14018                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
14019         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14020         },
14021         {
14022         .description = "valid",
14023         .field_bit_size = 1,
14024         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
14025         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
14026                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
14027         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
14028         .spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
14029                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
14030         },
14031         /* class_tid: 22, wh_plus, table: ext_em_0 */
14032         {
14033         .description = "spare",
14034         .field_bit_size = 59,
14035         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14036         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14037         },
14038         {
14039         .description = "local_cos",
14040         .field_bit_size = 3,
14041         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14042         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14043         },
14044         {
14045         .description = "l4_dst_port",
14046         .field_bit_size = 16,
14047         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14048         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
14049         .spec_operand = {
14050                 (BNXT_ULP_HF22_IDX_O_UDP_DST_PORT >> 8) & 0xff,
14051                 BNXT_ULP_HF22_IDX_O_UDP_DST_PORT & 0xff,
14052                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
14053                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
14054         },
14055         {
14056         .description = "l4_src_port",
14057         .field_bit_size = 16,
14058         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14059         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
14060         .spec_operand = {
14061                 (BNXT_ULP_HF22_IDX_O_UDP_SRC_PORT >> 8) & 0xff,
14062                 BNXT_ULP_HF22_IDX_O_UDP_SRC_PORT & 0xff,
14063                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
14064                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
14065         },
14066         {
14067         .description = "ip_proto",
14068         .field_bit_size = 8,
14069         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14070         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
14071         .spec_operand = {
14072                 BNXT_ULP_SYM_IP_PROTO_UDP,
14073                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
14074                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
14075         },
14076         {
14077         .description = "ipv6_dst_addr",
14078         .field_bit_size = 128,
14079         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14080         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
14081         .spec_operand = {
14082                 (BNXT_ULP_HF22_IDX_O_IPV6_DST_ADDR >> 8) & 0xff,
14083                 BNXT_ULP_HF22_IDX_O_IPV6_DST_ADDR & 0xff,
14084                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
14085                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
14086         },
14087         {
14088         .description = "ipv6_src_addr",
14089         .field_bit_size = 128,
14090         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14091         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
14092         .spec_operand = {
14093                 (BNXT_ULP_HF22_IDX_O_IPV6_SRC_ADDR >> 8) & 0xff,
14094                 BNXT_ULP_HF22_IDX_O_IPV6_SRC_ADDR & 0xff,
14095                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
14096                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
14097         },
14098         {
14099         .description = "l2_src_mac",
14100         .field_bit_size = 48,
14101         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14102         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14103         },
14104         {
14105         .description = "tun_id",
14106         .field_bit_size = 24,
14107         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14108         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14109         },
14110         {
14111         .description = "l2_cntxt_id",
14112         .field_bit_size = 10,
14113         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14114         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
14115         .spec_operand = {
14116                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
14117                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
14118                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
14119                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
14120         },
14121         {
14122         .description = "em_profile_id",
14123         .field_bit_size = 8,
14124         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14125         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
14126         .spec_operand = {
14127                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
14128                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
14129                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
14130                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
14131         },
14132         /* class_tid: 22, wh_plus, table: int_em_0 */
14133         {
14134         .description = "spare",
14135         .field_bit_size = 3,
14136         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14137         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14138         },
14139         {
14140         .description = "local_cos",
14141         .field_bit_size = 3,
14142         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14143         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14144         },
14145         {
14146         .description = "l4_dst_port",
14147         .field_bit_size = 16,
14148         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14149         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
14150         .spec_operand = {
14151                 (BNXT_ULP_HF22_IDX_O_UDP_DST_PORT >> 8) & 0xff,
14152                 BNXT_ULP_HF22_IDX_O_UDP_DST_PORT & 0xff,
14153                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
14154                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
14155         },
14156         {
14157         .description = "l4_src_port",
14158         .field_bit_size = 16,
14159         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14160         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
14161         .spec_operand = {
14162                 (BNXT_ULP_HF22_IDX_O_UDP_SRC_PORT >> 8) & 0xff,
14163                 BNXT_ULP_HF22_IDX_O_UDP_SRC_PORT & 0xff,
14164                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
14165                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
14166         },
14167         {
14168         .description = "ip_proto",
14169         .field_bit_size = 8,
14170         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14171         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
14172         .spec_operand = {
14173                 BNXT_ULP_SYM_IP_PROTO_UDP,
14174                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
14175                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
14176         },
14177         {
14178         .description = "ipv6_dst_addr",
14179         .field_bit_size = 128,
14180         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14181         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
14182         .spec_operand = {
14183                 (BNXT_ULP_HF22_IDX_O_IPV6_DST_ADDR >> 8) & 0xff,
14184                 BNXT_ULP_HF22_IDX_O_IPV6_DST_ADDR & 0xff,
14185                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
14186                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
14187         },
14188         {
14189         .description = "ipv6_src_addr",
14190         .field_bit_size = 128,
14191         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14192         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
14193         .spec_operand = {
14194                 (BNXT_ULP_HF22_IDX_O_IPV6_SRC_ADDR >> 8) & 0xff,
14195                 BNXT_ULP_HF22_IDX_O_IPV6_SRC_ADDR & 0xff,
14196                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
14197                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
14198         },
14199         {
14200         .description = "l2_src_mac",
14201         .field_bit_size = 48,
14202         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14203         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14204         },
14205         {
14206         .description = "tun_id",
14207         .field_bit_size = 24,
14208         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14209         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14210         },
14211         {
14212         .description = "l2_cntxt_id",
14213         .field_bit_size = 10,
14214         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14215         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
14216         .spec_operand = {
14217                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
14218                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
14219                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
14220                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
14221         },
14222         {
14223         .description = "em_profile_id",
14224         .field_bit_size = 8,
14225         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14226         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
14227         .spec_operand = {
14228                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
14229                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
14230                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
14231                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
14232         },
14233         /* class_tid: 23, wh_plus, table: l2_cntxt_cache_0 */
14234         {
14235         .description = "svif",
14236         .field_bit_size = 8,
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_HF23_IDX_SVIF_INDEX >> 8) & 0xff,
14241                 BNXT_ULP_HF23_IDX_SVIF_INDEX & 0xff,
14242                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
14243                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
14244         },
14245         /* class_tid: 23, wh_plus, table: l2_cntxt_tcam_0 */
14246         {
14247         .description = "l2_ivlan_vid",
14248         .field_bit_size = 12,
14249         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14250         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14251         },
14252         {
14253         .description = "l2_ovlan_vid",
14254         .field_bit_size = 12,
14255         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14256         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14257         },
14258         {
14259         .description = "mac0_l2_dst",
14260         .field_bit_size = 48,
14261         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14262         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14263         },
14264         {
14265         .description = "svif",
14266         .field_bit_size = 8,
14267         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
14268         .mask_operand = {
14269                 (BNXT_ULP_HF23_IDX_SVIF_INDEX >> 8) & 0xff,
14270                 BNXT_ULP_HF23_IDX_SVIF_INDEX & 0xff,
14271                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
14272                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
14273         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
14274         .spec_operand = {
14275                 (BNXT_ULP_HF23_IDX_SVIF_INDEX >> 8) & 0xff,
14276                 BNXT_ULP_HF23_IDX_SVIF_INDEX & 0xff,
14277                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
14278                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
14279         },
14280         {
14281         .description = "sparif",
14282         .field_bit_size = 4,
14283         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14284         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14285         },
14286         {
14287         .description = "tl2_ivlan_vid",
14288         .field_bit_size = 12,
14289         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14290         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14291         },
14292         {
14293         .description = "tl2_ovlan_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 = "mac1_tl2_dst",
14300         .field_bit_size = 48,
14301         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14302         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14303         },
14304         {
14305         .description = "l2_num_vtags",
14306         .field_bit_size = 2,
14307         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14308         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14309         },
14310         {
14311         .description = "tl2_num_vtags",
14312         .field_bit_size = 2,
14313         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14314         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14315         },
14316         {
14317         .description = "tun_hdr_type",
14318         .field_bit_size = 4,
14319         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
14320         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
14321                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
14322         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
14323         .spec_operand = {
14324                 BNXT_ULP_SYM_TUN_HDR_TYPE_NONE,
14325                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
14326                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
14327         },
14328         {
14329         .description = "key_type",
14330         .field_bit_size = 2,
14331         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14332         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14333         },
14334         {
14335         .description = "valid",
14336         .field_bit_size = 1,
14337         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
14338         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
14339                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
14340         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
14341         .spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
14342                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
14343         },
14344         /* class_tid: 23, wh_plus, table: profile_tcam_cache_0 */
14345         {
14346         .description = "recycle",
14347         .field_bit_size = 1,
14348         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14349         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14350         },
14351         {
14352         .description = "prof_func_id",
14353         .field_bit_size = 7,
14354         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14355         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
14356         .spec_operand = {
14357                 (BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID >> 8) & 0xff,
14358                 BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID & 0xff,
14359                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
14360                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
14361         },
14362         {
14363         .description = "class_tid",
14364         .field_bit_size = 8,
14365         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14366         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
14367         .spec_operand = {
14368                 (BNXT_ULP_REGFILE_INDEX_CLASS_TID >> 8) & 0xff,
14369                 BNXT_ULP_REGFILE_INDEX_CLASS_TID & 0xff,
14370                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
14371                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
14372         },
14373         /* class_tid: 23, wh_plus, table: profile_tcam_0 */
14374         {
14375         .description = "l4_hdr_is_udp_tcp",
14376         .field_bit_size = 1,
14377         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14378         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14379         },
14380         {
14381         .description = "l4_hdr_type",
14382         .field_bit_size = 4,
14383         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
14384         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
14385                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
14386         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14387         },
14388         {
14389         .description = "l4_hdr_error",
14390         .field_bit_size = 1,
14391         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
14392         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
14393                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
14394         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14395         },
14396         {
14397         .description = "l4_hdr_valid",
14398         .field_bit_size = 1,
14399         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
14400         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
14401                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
14402         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
14403         .spec_operand = {
14404                 BNXT_ULP_SYM_L4_HDR_VALID_YES,
14405                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
14406                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
14407         },
14408         {
14409         .description = "l3_ipv6_cmp_dst",
14410         .field_bit_size = 1,
14411         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14412         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14413         },
14414         {
14415         .description = "l3_ipv6_cmp_src",
14416         .field_bit_size = 1,
14417         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14418         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14419         },
14420         {
14421         .description = "l3_hdr_isIP",
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 = "l3_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_CONSTANT,
14433         .spec_operand = {
14434                 BNXT_ULP_SYM_L3_HDR_TYPE_IPV6,
14435                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
14436                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
14437         },
14438         {
14439         .description = "l3_hdr_error",
14440         .field_bit_size = 1,
14441         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
14442         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
14443                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
14444         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14445         },
14446         {
14447         .description = "l3_hdr_valid",
14448         .field_bit_size = 1,
14449         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
14450         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
14451                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
14452         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
14453         .spec_operand = {
14454                 BNXT_ULP_SYM_L3_HDR_VALID_YES,
14455                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
14456                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
14457         },
14458         {
14459         .description = "l2_two_vtags",
14460         .field_bit_size = 1,
14461         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14462         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14463         },
14464         {
14465         .description = "l2_vtag_present",
14466         .field_bit_size = 1,
14467         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14468         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14469         },
14470         {
14471         .description = "l2_uc_mc_bc",
14472         .field_bit_size = 2,
14473         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14474         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14475         },
14476         {
14477         .description = "l2_hdr_type",
14478         .field_bit_size = 2,
14479         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
14480         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
14481                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
14482         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14483         },
14484         {
14485         .description = "l2_hdr_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 = "l2_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_L2_HDR_VALID_YES,
14501                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
14502                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
14503         },
14504         {
14505         .description = "tun_hdr_flags",
14506         .field_bit_size = 3,
14507         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14508         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14509         },
14510         {
14511         .description = "tun_hdr_type",
14512         .field_bit_size = 4,
14513         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14514         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14515         },
14516         {
14517         .description = "tun_hdr_error",
14518         .field_bit_size = 1,
14519         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14520         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14521         },
14522         {
14523         .description = "tun_hdr_valid",
14524         .field_bit_size = 1,
14525         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14526         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14527         },
14528         {
14529         .description = "tl4_hdr_is_udp_tcp",
14530         .field_bit_size = 1,
14531         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14532         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14533         },
14534         {
14535         .description = "tl4_hdr_type",
14536         .field_bit_size = 4,
14537         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14538         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14539         },
14540         {
14541         .description = "tl4_hdr_error",
14542         .field_bit_size = 1,
14543         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14544         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14545         },
14546         {
14547         .description = "tl4_hdr_valid",
14548         .field_bit_size = 1,
14549         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14550         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14551         },
14552         {
14553         .description = "tl3_ipv6_cmp_dst",
14554         .field_bit_size = 1,
14555         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14556         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14557         },
14558         {
14559         .description = "tl3_ipv6_cmp_src",
14560         .field_bit_size = 1,
14561         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14562         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14563         },
14564         {
14565         .description = "tl3_hdr_isIP",
14566         .field_bit_size = 1,
14567         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14568         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14569         },
14570         {
14571         .description = "tl3_hdr_type",
14572         .field_bit_size = 4,
14573         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14574         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14575         },
14576         {
14577         .description = "tl3_hdr_error",
14578         .field_bit_size = 1,
14579         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14580         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14581         },
14582         {
14583         .description = "tl3_hdr_valid",
14584         .field_bit_size = 1,
14585         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14586         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14587         },
14588         {
14589         .description = "tl2_two_vtags",
14590         .field_bit_size = 1,
14591         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14592         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14593         },
14594         {
14595         .description = "tl2_vtag_present",
14596         .field_bit_size = 1,
14597         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14598         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14599         },
14600         {
14601         .description = "tl2_uc_mc_bc",
14602         .field_bit_size = 2,
14603         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14604         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14605         },
14606         {
14607         .description = "tl2_hdr_type",
14608         .field_bit_size = 2,
14609         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14610         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14611         },
14612         {
14613         .description = "tl2_hdr_valid",
14614         .field_bit_size = 1,
14615         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14616         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14617         },
14618         {
14619         .description = "hrec_next",
14620         .field_bit_size = 1,
14621         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14622         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14623         },
14624         {
14625         .description = "reserved",
14626         .field_bit_size = 9,
14627         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14628         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14629         },
14630         {
14631         .description = "prof_func_id",
14632         .field_bit_size = 7,
14633         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
14634         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
14635                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
14636         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
14637         .spec_operand = {
14638                 (BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID >> 8) & 0xff,
14639                 BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID & 0xff,
14640                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
14641                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
14642         },
14643         {
14644         .description = "agg_error",
14645         .field_bit_size = 1,
14646         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14647         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14648         },
14649         {
14650         .description = "recycle_cnt",
14651         .field_bit_size = 2,
14652         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
14653         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
14654                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
14655         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14656         },
14657         {
14658         .description = "pkt_type_0",
14659         .field_bit_size = 2,
14660         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14661         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14662         },
14663         {
14664         .description = "pkt_type_1",
14665         .field_bit_size = 2,
14666         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
14667         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
14668                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
14669         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14670         },
14671         {
14672         .description = "valid",
14673         .field_bit_size = 1,
14674         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
14675         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
14676                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
14677         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
14678         .spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
14679                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
14680         },
14681         /* class_tid: 23, wh_plus, table: ext_em_0 */
14682         {
14683         .description = "spare",
14684         .field_bit_size = 59,
14685         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14686         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14687         },
14688         {
14689         .description = "local_cos",
14690         .field_bit_size = 3,
14691         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14692         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14693         },
14694         {
14695         .description = "l4_dst_port",
14696         .field_bit_size = 16,
14697         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14698         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
14699         .spec_operand = {
14700                 (BNXT_ULP_HF23_IDX_O_TCP_DST_PORT >> 8) & 0xff,
14701                 BNXT_ULP_HF23_IDX_O_TCP_DST_PORT & 0xff,
14702                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
14703                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
14704         },
14705         {
14706         .description = "l4_src_port",
14707         .field_bit_size = 16,
14708         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14709         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
14710         .spec_operand = {
14711                 (BNXT_ULP_HF23_IDX_O_TCP_SRC_PORT >> 8) & 0xff,
14712                 BNXT_ULP_HF23_IDX_O_TCP_SRC_PORT & 0xff,
14713                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
14714                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
14715         },
14716         {
14717         .description = "ip_proto",
14718         .field_bit_size = 8,
14719         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14720         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
14721         .spec_operand = {
14722                 BNXT_ULP_SYM_IP_PROTO_TCP,
14723                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
14724                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
14725         },
14726         {
14727         .description = "ipv6_dst_addr",
14728         .field_bit_size = 128,
14729         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14730         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
14731         .spec_operand = {
14732                 (BNXT_ULP_HF23_IDX_O_IPV6_DST_ADDR >> 8) & 0xff,
14733                 BNXT_ULP_HF23_IDX_O_IPV6_DST_ADDR & 0xff,
14734                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
14735                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
14736         },
14737         {
14738         .description = "ipv6_src_addr",
14739         .field_bit_size = 128,
14740         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14741         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
14742         .spec_operand = {
14743                 (BNXT_ULP_HF23_IDX_O_IPV6_SRC_ADDR >> 8) & 0xff,
14744                 BNXT_ULP_HF23_IDX_O_IPV6_SRC_ADDR & 0xff,
14745                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
14746                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
14747         },
14748         {
14749         .description = "l2_src_mac",
14750         .field_bit_size = 48,
14751         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14752         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14753         },
14754         {
14755         .description = "tun_id",
14756         .field_bit_size = 24,
14757         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14758         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14759         },
14760         {
14761         .description = "l2_cntxt_id",
14762         .field_bit_size = 10,
14763         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14764         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
14765         .spec_operand = {
14766                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
14767                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
14768                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
14769                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
14770         },
14771         {
14772         .description = "em_profile_id",
14773         .field_bit_size = 8,
14774         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14775         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
14776         .spec_operand = {
14777                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
14778                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
14779                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
14780                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
14781         },
14782         /* class_tid: 23, wh_plus, table: int_em_0 */
14783         {
14784         .description = "spare",
14785         .field_bit_size = 3,
14786         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14787         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14788         },
14789         {
14790         .description = "local_cos",
14791         .field_bit_size = 3,
14792         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14793         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14794         },
14795         {
14796         .description = "l4_dst_port",
14797         .field_bit_size = 16,
14798         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14799         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
14800         .spec_operand = {
14801                 (BNXT_ULP_HF23_IDX_O_TCP_DST_PORT >> 8) & 0xff,
14802                 BNXT_ULP_HF23_IDX_O_TCP_DST_PORT & 0xff,
14803                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
14804                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
14805         },
14806         {
14807         .description = "l4_src_port",
14808         .field_bit_size = 16,
14809         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14810         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
14811         .spec_operand = {
14812                 (BNXT_ULP_HF23_IDX_O_TCP_SRC_PORT >> 8) & 0xff,
14813                 BNXT_ULP_HF23_IDX_O_TCP_SRC_PORT & 0xff,
14814                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
14815                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
14816         },
14817         {
14818         .description = "ip_proto",
14819         .field_bit_size = 8,
14820         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14821         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
14822         .spec_operand = {
14823                 BNXT_ULP_SYM_IP_PROTO_TCP,
14824                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
14825                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
14826         },
14827         {
14828         .description = "ipv6_dst_addr",
14829         .field_bit_size = 128,
14830         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14831         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
14832         .spec_operand = {
14833                 (BNXT_ULP_HF23_IDX_O_IPV6_DST_ADDR >> 8) & 0xff,
14834                 BNXT_ULP_HF23_IDX_O_IPV6_DST_ADDR & 0xff,
14835                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
14836                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
14837         },
14838         {
14839         .description = "ipv6_src_addr",
14840         .field_bit_size = 128,
14841         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14842         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
14843         .spec_operand = {
14844                 (BNXT_ULP_HF23_IDX_O_IPV6_SRC_ADDR >> 8) & 0xff,
14845                 BNXT_ULP_HF23_IDX_O_IPV6_SRC_ADDR & 0xff,
14846                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
14847                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
14848         },
14849         {
14850         .description = "l2_src_mac",
14851         .field_bit_size = 48,
14852         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14853         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14854         },
14855         {
14856         .description = "tun_id",
14857         .field_bit_size = 24,
14858         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14859         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14860         },
14861         {
14862         .description = "l2_cntxt_id",
14863         .field_bit_size = 10,
14864         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14865         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
14866         .spec_operand = {
14867                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
14868                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
14869                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
14870                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
14871         },
14872         {
14873         .description = "em_profile_id",
14874         .field_bit_size = 8,
14875         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14876         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
14877         .spec_operand = {
14878                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
14879                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
14880                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
14881                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
14882         },
14883         /* class_tid: 24, wh_plus, table: l2_cntxt_tcam_0 */
14884         {
14885         .description = "l2_ivlan_vid",
14886         .field_bit_size = 12,
14887         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
14888         .mask_operand = {
14889                 (BNXT_ULP_HF24_IDX_OO_VLAN_VID >> 8) & 0xff,
14890                 BNXT_ULP_HF24_IDX_OO_VLAN_VID & 0xff,
14891                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
14892                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
14893         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
14894         .spec_operand = {
14895                 (BNXT_ULP_HF24_IDX_OO_VLAN_VID >> 8) & 0xff,
14896                 BNXT_ULP_HF24_IDX_OO_VLAN_VID & 0xff,
14897                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
14898                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
14899         },
14900         {
14901         .description = "l2_ovlan_vid",
14902         .field_bit_size = 12,
14903         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14904         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14905         },
14906         {
14907         .description = "mac0_l2_addr",
14908         .field_bit_size = 48,
14909         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
14910         .mask_operand = {
14911                 (BNXT_ULP_HF24_IDX_O_ETH_SMAC >> 8) & 0xff,
14912                 BNXT_ULP_HF24_IDX_O_ETH_SMAC & 0xff,
14913                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
14914                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
14915         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
14916         .spec_operand = {
14917                 (BNXT_ULP_HF24_IDX_O_ETH_SMAC >> 8) & 0xff,
14918                 BNXT_ULP_HF24_IDX_O_ETH_SMAC & 0xff,
14919                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
14920                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
14921         },
14922         {
14923         .description = "svif",
14924         .field_bit_size = 8,
14925         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
14926         .mask_operand = {
14927                 (BNXT_ULP_HF24_IDX_SVIF_INDEX >> 8) & 0xff,
14928                 BNXT_ULP_HF24_IDX_SVIF_INDEX & 0xff,
14929                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
14930                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
14931         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
14932         .spec_operand = {
14933                 (BNXT_ULP_HF24_IDX_SVIF_INDEX >> 8) & 0xff,
14934                 BNXT_ULP_HF24_IDX_SVIF_INDEX & 0xff,
14935                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
14936                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
14937         },
14938         {
14939         .description = "sparif",
14940         .field_bit_size = 4,
14941         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14942         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14943         },
14944         {
14945         .description = "tl2_ivlan_vid",
14946         .field_bit_size = 12,
14947         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14948         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14949         },
14950         {
14951         .description = "tl2_ovlan_vid",
14952         .field_bit_size = 12,
14953         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14954         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14955         },
14956         {
14957         .description = "mac1_l2_addr",
14958         .field_bit_size = 48,
14959         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14960         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14961         },
14962         {
14963         .description = "l2_num_vtags",
14964         .field_bit_size = 2,
14965         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
14966         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
14967                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
14968         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,
14969         .spec_operand = {
14970                 (BNXT_ULP_CF_IDX_O_VTAG_NUM >> 8) & 0xff,
14971                 BNXT_ULP_CF_IDX_O_VTAG_NUM & 0xff,
14972                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
14973                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
14974         },
14975         {
14976         .description = "tl2_num_vtags",
14977         .field_bit_size = 2,
14978         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14979         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14980         },
14981         {
14982         .description = "tun_hdr_type",
14983         .field_bit_size = 4,
14984         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
14985         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
14986                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
14987         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
14988         .spec_operand = {
14989                 BNXT_ULP_SYM_TUN_HDR_TYPE_NONE,
14990                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
14991                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
14992         },
14993         {
14994         .description = "key_type",
14995         .field_bit_size = 2,
14996         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
14997         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
14998                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
14999         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
15000         .spec_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,
15001                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
15002         },
15003         {
15004         .description = "valid",
15005         .field_bit_size = 1,
15006         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
15007         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
15008                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
15009         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
15010         .spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
15011                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
15012         },
15013         /* class_tid: 24, wh_plus, table: profile_tcam_cache_0 */
15014         {
15015         .description = "recycle",
15016         .field_bit_size = 1,
15017         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15018         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15019         },
15020         {
15021         .description = "prof_func_id",
15022         .field_bit_size = 7,
15023         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15024         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
15025         .spec_operand = {
15026                 (BNXT_ULP_GLB_REGFILE_INDEX_L2_PROF_FUNC_ID >> 8) & 0xff,
15027                 BNXT_ULP_GLB_REGFILE_INDEX_L2_PROF_FUNC_ID & 0xff,
15028                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
15029                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
15030         },
15031         {
15032         .description = "class_tid",
15033         .field_bit_size = 8,
15034         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15035         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
15036         .spec_operand = {
15037                 (BNXT_ULP_REGFILE_INDEX_CLASS_TID >> 8) & 0xff,
15038                 BNXT_ULP_REGFILE_INDEX_CLASS_TID & 0xff,
15039                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
15040                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
15041         },
15042         /* class_tid: 24, wh_plus, table: profile_tcam_0 */
15043         {
15044         .description = "l4_hdr_is_udp_tcp",
15045         .field_bit_size = 1,
15046         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15047         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15048         },
15049         {
15050         .description = "l4_hdr_type",
15051         .field_bit_size = 4,
15052         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15053         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15054         },
15055         {
15056         .description = "l4_hdr_error",
15057         .field_bit_size = 1,
15058         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15059         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15060         },
15061         {
15062         .description = "l4_hdr_valid",
15063         .field_bit_size = 1,
15064         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15065         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15066         },
15067         {
15068         .description = "l3_ipv6_cmp_dst",
15069         .field_bit_size = 1,
15070         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15071         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15072         },
15073         {
15074         .description = "l3_ipv6_cmp_src",
15075         .field_bit_size = 1,
15076         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15077         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15078         },
15079         {
15080         .description = "l3_hdr_isIP",
15081         .field_bit_size = 1,
15082         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15083         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15084         },
15085         {
15086         .description = "l3_hdr_type",
15087         .field_bit_size = 4,
15088         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
15089         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
15090                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
15091         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15092         },
15093         {
15094         .description = "l3_hdr_error",
15095         .field_bit_size = 1,
15096         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
15097         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
15098                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
15099         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15100         },
15101         {
15102         .description = "l3_hdr_valid",
15103         .field_bit_size = 1,
15104         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
15105         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
15106                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
15107         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
15108         .spec_operand = {
15109                 BNXT_ULP_SYM_L3_HDR_VALID_YES,
15110                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
15111                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
15112         },
15113         {
15114         .description = "l2_two_vtags",
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 = "l2_vtag_present",
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 = "l2_uc_mc_bc",
15127         .field_bit_size = 2,
15128         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
15129         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
15130                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
15131         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15132         },
15133         {
15134         .description = "l2_hdr_type",
15135         .field_bit_size = 2,
15136         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
15137         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
15138                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
15139         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15140         },
15141         {
15142         .description = "l2_hdr_error",
15143         .field_bit_size = 1,
15144         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
15145         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
15146                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
15147         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15148         },
15149         {
15150         .description = "l2_hdr_valid",
15151         .field_bit_size = 1,
15152         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
15153         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
15154                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
15155         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
15156         .spec_operand = {
15157                 BNXT_ULP_SYM_L2_HDR_VALID_YES,
15158                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
15159                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
15160         },
15161         {
15162         .description = "tun_hdr_flags",
15163         .field_bit_size = 3,
15164         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15165         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15166         },
15167         {
15168         .description = "tun_hdr_type",
15169         .field_bit_size = 4,
15170         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15171         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15172         },
15173         {
15174         .description = "tun_hdr_error",
15175         .field_bit_size = 1,
15176         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15177         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15178         },
15179         {
15180         .description = "tun_hdr_valid",
15181         .field_bit_size = 1,
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 = "tl4_hdr_is_udp_tcp",
15189         .field_bit_size = 1,
15190         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15191         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15192         },
15193         {
15194         .description = "tl4_hdr_type",
15195         .field_bit_size = 4,
15196         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15197         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15198         },
15199         {
15200         .description = "tl4_hdr_error",
15201         .field_bit_size = 1,
15202         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15203         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15204         },
15205         {
15206         .description = "tl4_hdr_valid",
15207         .field_bit_size = 1,
15208         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
15209         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
15210                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
15211         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15212         },
15213         {
15214         .description = "tl3_ipv6_cmp_dst",
15215         .field_bit_size = 1,
15216         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15217         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15218         },
15219         {
15220         .description = "tl3_ipv6_cmp_src",
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 = "tl3_hdr_isIP",
15227         .field_bit_size = 1,
15228         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15229         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15230         },
15231         {
15232         .description = "tl3_hdr_type",
15233         .field_bit_size = 4,
15234         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15235         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15236         },
15237         {
15238         .description = "tl3_hdr_error",
15239         .field_bit_size = 1,
15240         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15241         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15242         },
15243         {
15244         .description = "tl3_hdr_valid",
15245         .field_bit_size = 1,
15246         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
15247         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
15248                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
15249         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15250         },
15251         {
15252         .description = "tl2_two_vtags",
15253         .field_bit_size = 1,
15254         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15255         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15256         },
15257         {
15258         .description = "tl2_vtag_present",
15259         .field_bit_size = 1,
15260         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15261         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15262         },
15263         {
15264         .description = "tl2_uc_mc_bc",
15265         .field_bit_size = 2,
15266         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15267         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15268         },
15269         {
15270         .description = "tl2_hdr_type",
15271         .field_bit_size = 2,
15272         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15273         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15274         },
15275         {
15276         .description = "tl2_hdr_valid",
15277         .field_bit_size = 1,
15278         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
15279         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
15280                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
15281         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15282         },
15283         {
15284         .description = "hrec_next",
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 = "reserved",
15291         .field_bit_size = 9,
15292         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15293         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15294         },
15295         {
15296         .description = "prof_func_id",
15297         .field_bit_size = 7,
15298         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
15299         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
15300                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
15301         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
15302         .spec_operand = {
15303                 (BNXT_ULP_GLB_REGFILE_INDEX_L2_PROF_FUNC_ID >> 8) & 0xff,
15304                 BNXT_ULP_GLB_REGFILE_INDEX_L2_PROF_FUNC_ID & 0xff,
15305                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
15306                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
15307         },
15308         {
15309         .description = "agg_error",
15310         .field_bit_size = 1,
15311         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15312         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15313         },
15314         {
15315         .description = "recycle_cnt",
15316         .field_bit_size = 2,
15317         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
15318         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
15319                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
15320         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15321         },
15322         {
15323         .description = "pkt_type_0",
15324         .field_bit_size = 2,
15325         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15326         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15327         },
15328         {
15329         .description = "pkt_type_1",
15330         .field_bit_size = 2,
15331         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
15332         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
15333                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
15334         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15335         },
15336         {
15337         .description = "valid",
15338         .field_bit_size = 1,
15339         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
15340         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
15341                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
15342         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
15343         .spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
15344                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
15345         },
15346         /* class_tid: 24, wh_plus, table: ext_em_0 */
15347         {
15348         .description = "spare",
15349         .field_bit_size = 351,
15350         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15351         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15352         },
15353         {
15354         .description = "local_cos",
15355         .field_bit_size = 3,
15356         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15357         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15358         },
15359         {
15360         .description = "l2_eth_type",
15361         .field_bit_size = 16,
15362         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15363         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15364         },
15365         {
15366         .description = "l2_inner_vid",
15367         .field_bit_size = 12,
15368         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15369         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15370         },
15371         {
15372         .description = "l2_dmac",
15373         .field_bit_size = 48,
15374         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15375         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
15376         .spec_operand = {
15377                 (BNXT_ULP_HF24_IDX_O_ETH_DMAC >> 8) & 0xff,
15378                 BNXT_ULP_HF24_IDX_O_ETH_DMAC & 0xff,
15379                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
15380                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
15381         },
15382         {
15383         .description = "l2_cntxt_id",
15384         .field_bit_size = 10,
15385         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15386         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
15387         .spec_operand = {
15388                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
15389                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
15390                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
15391                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
15392         },
15393         {
15394         .description = "em_profile_id",
15395         .field_bit_size = 8,
15396         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15397         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
15398         .spec_operand = {
15399                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
15400                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
15401                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
15402                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
15403         },
15404         /* class_tid: 24, wh_plus, table: int_em_0 */
15405         {
15406         .description = "spare",
15407         .field_bit_size = 7,
15408         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15409         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15410         },
15411         {
15412         .description = "local_cos",
15413         .field_bit_size = 3,
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_eth_type",
15419         .field_bit_size = 16,
15420         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15421         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15422         },
15423         {
15424         .description = "l2_inner_vid",
15425         .field_bit_size = 12,
15426         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15427         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15428         },
15429         {
15430         .description = "l2_dmac",
15431         .field_bit_size = 48,
15432         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15433         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
15434         .spec_operand = {
15435                 (BNXT_ULP_HF24_IDX_O_ETH_DMAC >> 8) & 0xff,
15436                 BNXT_ULP_HF24_IDX_O_ETH_DMAC & 0xff,
15437                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
15438                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
15439         },
15440         {
15441         .description = "l2_cntxt_id",
15442         .field_bit_size = 10,
15443         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15444         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
15445         .spec_operand = {
15446                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
15447                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
15448                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
15449                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
15450         },
15451         {
15452         .description = "em_profile_id",
15453         .field_bit_size = 8,
15454         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15455         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
15456         .spec_operand = {
15457                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
15458                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
15459                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
15460                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
15461         },
15462         /* class_tid: 25, wh_plus, table: l2_cntxt_tcam_0 */
15463         {
15464         .description = "l2_ivlan_vid",
15465         .field_bit_size = 12,
15466         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
15467         .mask_operand = {
15468                 (BNXT_ULP_HF25_IDX_OO_VLAN_VID >> 8) & 0xff,
15469                 BNXT_ULP_HF25_IDX_OO_VLAN_VID & 0xff,
15470                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
15471                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
15472         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
15473         .spec_operand = {
15474                 (BNXT_ULP_HF25_IDX_OO_VLAN_VID >> 8) & 0xff,
15475                 BNXT_ULP_HF25_IDX_OO_VLAN_VID & 0xff,
15476                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
15477                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
15478         },
15479         {
15480         .description = "l2_ovlan_vid",
15481         .field_bit_size = 12,
15482         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15483         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15484         },
15485         {
15486         .description = "mac0_l2_addr",
15487         .field_bit_size = 48,
15488         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
15489         .mask_operand = {
15490                 (BNXT_ULP_HF25_IDX_O_ETH_SMAC >> 8) & 0xff,
15491                 BNXT_ULP_HF25_IDX_O_ETH_SMAC & 0xff,
15492                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
15493                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
15494         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
15495         .spec_operand = {
15496                 (BNXT_ULP_HF25_IDX_O_ETH_SMAC >> 8) & 0xff,
15497                 BNXT_ULP_HF25_IDX_O_ETH_SMAC & 0xff,
15498                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
15499                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
15500         },
15501         {
15502         .description = "svif",
15503         .field_bit_size = 8,
15504         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
15505         .mask_operand = {
15506                 (BNXT_ULP_HF25_IDX_SVIF_INDEX >> 8) & 0xff,
15507                 BNXT_ULP_HF25_IDX_SVIF_INDEX & 0xff,
15508                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
15509                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
15510         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
15511         .spec_operand = {
15512                 (BNXT_ULP_HF25_IDX_SVIF_INDEX >> 8) & 0xff,
15513                 BNXT_ULP_HF25_IDX_SVIF_INDEX & 0xff,
15514                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
15515                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
15516         },
15517         {
15518         .description = "sparif",
15519         .field_bit_size = 4,
15520         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15521         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15522         },
15523         {
15524         .description = "tl2_ivlan_vid",
15525         .field_bit_size = 12,
15526         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15527         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15528         },
15529         {
15530         .description = "tl2_ovlan_vid",
15531         .field_bit_size = 12,
15532         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15533         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15534         },
15535         {
15536         .description = "mac1_l2_addr",
15537         .field_bit_size = 48,
15538         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15539         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15540         },
15541         {
15542         .description = "l2_num_vtags",
15543         .field_bit_size = 2,
15544         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
15545         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
15546                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
15547         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,
15548         .spec_operand = {
15549                 (BNXT_ULP_CF_IDX_O_VTAG_NUM >> 8) & 0xff,
15550                 BNXT_ULP_CF_IDX_O_VTAG_NUM & 0xff,
15551                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
15552                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
15553         },
15554         {
15555         .description = "tl2_num_vtags",
15556         .field_bit_size = 2,
15557         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15558         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15559         },
15560         {
15561         .description = "tun_hdr_type",
15562         .field_bit_size = 4,
15563         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
15564         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
15565                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
15566         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
15567         .spec_operand = {
15568                 BNXT_ULP_SYM_TUN_HDR_TYPE_NONE,
15569                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
15570                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
15571         },
15572         {
15573         .description = "key_type",
15574         .field_bit_size = 2,
15575         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
15576         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
15577                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
15578         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
15579         .spec_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,
15580                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
15581         },
15582         {
15583         .description = "valid",
15584         .field_bit_size = 1,
15585         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
15586         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
15587                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
15588         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
15589         .spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
15590                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
15591         },
15592         /* class_tid: 25, wh_plus, table: profile_tcam_cache_0 */
15593         {
15594         .description = "recycle",
15595         .field_bit_size = 1,
15596         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15597         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15598         },
15599         {
15600         .description = "prof_func_id",
15601         .field_bit_size = 7,
15602         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15603         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
15604         .spec_operand = {
15605                 (BNXT_ULP_GLB_REGFILE_INDEX_L2_PROF_FUNC_ID >> 8) & 0xff,
15606                 BNXT_ULP_GLB_REGFILE_INDEX_L2_PROF_FUNC_ID & 0xff,
15607                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
15608                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
15609         },
15610         {
15611         .description = "class_tid",
15612         .field_bit_size = 8,
15613         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15614         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
15615         .spec_operand = {
15616                 (BNXT_ULP_REGFILE_INDEX_CLASS_TID >> 8) & 0xff,
15617                 BNXT_ULP_REGFILE_INDEX_CLASS_TID & 0xff,
15618                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
15619                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
15620         },
15621         /* class_tid: 25, wh_plus, table: profile_tcam_0 */
15622         {
15623         .description = "l4_hdr_is_udp_tcp",
15624         .field_bit_size = 1,
15625         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15626         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15627         },
15628         {
15629         .description = "l4_hdr_type",
15630         .field_bit_size = 4,
15631         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15632         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15633         },
15634         {
15635         .description = "l4_hdr_error",
15636         .field_bit_size = 1,
15637         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15638         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15639         },
15640         {
15641         .description = "l4_hdr_valid",
15642         .field_bit_size = 1,
15643         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15644         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15645         },
15646         {
15647         .description = "l3_ipv6_cmp_dst",
15648         .field_bit_size = 1,
15649         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15650         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15651         },
15652         {
15653         .description = "l3_ipv6_cmp_src",
15654         .field_bit_size = 1,
15655         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15656         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15657         },
15658         {
15659         .description = "l3_hdr_isIP",
15660         .field_bit_size = 1,
15661         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15662         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15663         },
15664         {
15665         .description = "l3_hdr_type",
15666         .field_bit_size = 4,
15667         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
15668         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
15669                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
15670         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
15671         .spec_operand = {
15672                 BNXT_ULP_SYM_L3_HDR_TYPE_IPV6,
15673                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
15674                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
15675         },
15676         {
15677         .description = "l3_hdr_error",
15678         .field_bit_size = 1,
15679         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
15680         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
15681                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
15682         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15683         },
15684         {
15685         .description = "l3_hdr_valid",
15686         .field_bit_size = 1,
15687         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
15688         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
15689                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
15690         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
15691         .spec_operand = {
15692                 BNXT_ULP_SYM_L3_HDR_VALID_YES,
15693                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
15694                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
15695         },
15696         {
15697         .description = "l2_two_vtags",
15698         .field_bit_size = 1,
15699         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15700         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15701         },
15702         {
15703         .description = "l2_vtag_present",
15704         .field_bit_size = 1,
15705         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15706         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15707         },
15708         {
15709         .description = "l2_uc_mc_bc",
15710         .field_bit_size = 2,
15711         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
15712         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
15713                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
15714         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15715         },
15716         {
15717         .description = "l2_hdr_type",
15718         .field_bit_size = 2,
15719         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
15720         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
15721                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
15722         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15723         },
15724         {
15725         .description = "l2_hdr_error",
15726         .field_bit_size = 1,
15727         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
15728         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
15729                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
15730         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15731         },
15732         {
15733         .description = "l2_hdr_valid",
15734         .field_bit_size = 1,
15735         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
15736         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
15737                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
15738         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
15739         .spec_operand = {
15740                 BNXT_ULP_SYM_L2_HDR_VALID_YES,
15741                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
15742                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
15743         },
15744         {
15745         .description = "tun_hdr_flags",
15746         .field_bit_size = 3,
15747         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15748         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15749         },
15750         {
15751         .description = "tun_hdr_type",
15752         .field_bit_size = 4,
15753         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15754         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15755         },
15756         {
15757         .description = "tun_hdr_error",
15758         .field_bit_size = 1,
15759         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15760         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15761         },
15762         {
15763         .description = "tun_hdr_valid",
15764         .field_bit_size = 1,
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 = "tl4_hdr_is_udp_tcp",
15772         .field_bit_size = 1,
15773         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15774         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15775         },
15776         {
15777         .description = "tl4_hdr_type",
15778         .field_bit_size = 4,
15779         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15780         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15781         },
15782         {
15783         .description = "tl4_hdr_error",
15784         .field_bit_size = 1,
15785         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15786         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15787         },
15788         {
15789         .description = "tl4_hdr_valid",
15790         .field_bit_size = 1,
15791         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
15792         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
15793                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
15794         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15795         },
15796         {
15797         .description = "tl3_ipv6_cmp_dst",
15798         .field_bit_size = 1,
15799         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15800         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15801         },
15802         {
15803         .description = "tl3_ipv6_cmp_src",
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 = "tl3_hdr_isIP",
15810         .field_bit_size = 1,
15811         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15812         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15813         },
15814         {
15815         .description = "tl3_hdr_type",
15816         .field_bit_size = 4,
15817         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15818         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15819         },
15820         {
15821         .description = "tl3_hdr_error",
15822         .field_bit_size = 1,
15823         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15824         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15825         },
15826         {
15827         .description = "tl3_hdr_valid",
15828         .field_bit_size = 1,
15829         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
15830         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
15831                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
15832         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15833         },
15834         {
15835         .description = "tl2_two_vtags",
15836         .field_bit_size = 1,
15837         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15838         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15839         },
15840         {
15841         .description = "tl2_vtag_present",
15842         .field_bit_size = 1,
15843         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15844         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15845         },
15846         {
15847         .description = "tl2_uc_mc_bc",
15848         .field_bit_size = 2,
15849         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15850         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15851         },
15852         {
15853         .description = "tl2_hdr_type",
15854         .field_bit_size = 2,
15855         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15856         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15857         },
15858         {
15859         .description = "tl2_hdr_valid",
15860         .field_bit_size = 1,
15861         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
15862         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
15863                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
15864         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15865         },
15866         {
15867         .description = "hrec_next",
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 = "reserved",
15874         .field_bit_size = 9,
15875         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15876         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15877         },
15878         {
15879         .description = "prof_func_id",
15880         .field_bit_size = 7,
15881         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
15882         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
15883                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
15884         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
15885         .spec_operand = {
15886                 (BNXT_ULP_GLB_REGFILE_INDEX_L2_PROF_FUNC_ID >> 8) & 0xff,
15887                 BNXT_ULP_GLB_REGFILE_INDEX_L2_PROF_FUNC_ID & 0xff,
15888                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
15889                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
15890         },
15891         {
15892         .description = "agg_error",
15893         .field_bit_size = 1,
15894         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15895         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15896         },
15897         {
15898         .description = "recycle_cnt",
15899         .field_bit_size = 2,
15900         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
15901         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
15902                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
15903         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15904         },
15905         {
15906         .description = "pkt_type_0",
15907         .field_bit_size = 2,
15908         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15909         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15910         },
15911         {
15912         .description = "pkt_type_1",
15913         .field_bit_size = 2,
15914         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
15915         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
15916                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
15917         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15918         },
15919         {
15920         .description = "valid",
15921         .field_bit_size = 1,
15922         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
15923         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
15924                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
15925         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
15926         .spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
15927                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
15928         },
15929         /* class_tid: 25, wh_plus, table: ext_em_0 */
15930         {
15931         .description = "spare",
15932         .field_bit_size = 351,
15933         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15934         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15935         },
15936         {
15937         .description = "local_cos",
15938         .field_bit_size = 3,
15939         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15940         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15941         },
15942         {
15943         .description = "l2_eth_type",
15944         .field_bit_size = 16,
15945         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15946         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15947         },
15948         {
15949         .description = "l2_inner_vid",
15950         .field_bit_size = 12,
15951         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15952         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15953         },
15954         {
15955         .description = "l2_dmac",
15956         .field_bit_size = 48,
15957         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15958         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
15959         .spec_operand = {
15960                 (BNXT_ULP_HF25_IDX_O_ETH_DMAC >> 8) & 0xff,
15961                 BNXT_ULP_HF25_IDX_O_ETH_DMAC & 0xff,
15962                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
15963                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
15964         },
15965         {
15966         .description = "l2_cntxt_id",
15967         .field_bit_size = 10,
15968         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15969         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
15970         .spec_operand = {
15971                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
15972                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
15973                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
15974                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
15975         },
15976         {
15977         .description = "em_profile_id",
15978         .field_bit_size = 8,
15979         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15980         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
15981         .spec_operand = {
15982                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
15983                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
15984                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
15985                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
15986         },
15987         /* class_tid: 25, wh_plus, table: int_em_0 */
15988         {
15989         .description = "spare",
15990         .field_bit_size = 7,
15991         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15992         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15993         },
15994         {
15995         .description = "local_cos",
15996         .field_bit_size = 3,
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_eth_type",
16002         .field_bit_size = 16,
16003         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
16004         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16005         },
16006         {
16007         .description = "l2_inner_vid",
16008         .field_bit_size = 12,
16009         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
16010         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16011         },
16012         {
16013         .description = "l2_dmac",
16014         .field_bit_size = 48,
16015         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
16016         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
16017         .spec_operand = {
16018                 (BNXT_ULP_HF25_IDX_O_ETH_DMAC >> 8) & 0xff,
16019                 BNXT_ULP_HF25_IDX_O_ETH_DMAC & 0xff,
16020                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
16021                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
16022         },
16023         {
16024         .description = "l2_cntxt_id",
16025         .field_bit_size = 10,
16026         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
16027         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
16028         .spec_operand = {
16029                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
16030                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
16031                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
16032                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
16033         },
16034         {
16035         .description = "em_profile_id",
16036         .field_bit_size = 8,
16037         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
16038         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
16039         .spec_operand = {
16040                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
16041                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
16042                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
16043                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
16044         }
16045 };
16046
16047 struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] = {
16048         /* class_tid: 1, wh_plus, table: int_full_act_record_0 */
16049         {
16050         .description = "flow_cntr_ptr",
16051         .field_bit_size = 14,
16052         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16053         },
16054         {
16055         .description = "age_enable",
16056         .field_bit_size = 1,
16057         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16058         },
16059         {
16060         .description = "agg_cntr_en",
16061         .field_bit_size = 1,
16062         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16063         },
16064         {
16065         .description = "rate_cntr_en",
16066         .field_bit_size = 1,
16067         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16068         },
16069         {
16070         .description = "flow_cntr_en",
16071         .field_bit_size = 1,
16072         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16073         },
16074         {
16075         .description = "tcpflags_key",
16076         .field_bit_size = 8,
16077         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16078         },
16079         {
16080         .description = "tcpflags_mir",
16081         .field_bit_size = 1,
16082         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16083         },
16084         {
16085         .description = "tcpflags_match",
16086         .field_bit_size = 1,
16087         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16088         },
16089         {
16090         .description = "encap_ptr",
16091         .field_bit_size = 11,
16092         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16093         },
16094         {
16095         .description = "dst_ip_ptr",
16096         .field_bit_size = 10,
16097         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16098         },
16099         {
16100         .description = "tcp_dst_port",
16101         .field_bit_size = 16,
16102         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16103         },
16104         {
16105         .description = "src_ip_ptr",
16106         .field_bit_size = 10,
16107         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16108         },
16109         {
16110         .description = "tcp_src_port",
16111         .field_bit_size = 16,
16112         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16113         },
16114         {
16115         .description = "meter_id",
16116         .field_bit_size = 10,
16117         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16118         },
16119         {
16120         .description = "l3_rdir",
16121         .field_bit_size = 1,
16122         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16123         },
16124         {
16125         .description = "tl3_rdir",
16126         .field_bit_size = 1,
16127         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16128         },
16129         {
16130         .description = "l3_ttl_dec",
16131         .field_bit_size = 1,
16132         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16133         },
16134         {
16135         .description = "tl3_ttl_dec",
16136         .field_bit_size = 1,
16137         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16138         },
16139         {
16140         .description = "decap_func",
16141         .field_bit_size = 4,
16142         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16143         },
16144         {
16145         .description = "vnic_or_vport",
16146         .field_bit_size = 12,
16147         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,
16148         .result_operand = {
16149                 (BNXT_ULP_CF_IDX_DRV_FUNC_VNIC >> 8) & 0xff,
16150                 BNXT_ULP_CF_IDX_DRV_FUNC_VNIC & 0xff,
16151                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
16152                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
16153         },
16154         {
16155         .description = "pop_vlan",
16156         .field_bit_size = 1,
16157         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16158         },
16159         {
16160         .description = "meter",
16161         .field_bit_size = 1,
16162         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16163         },
16164         {
16165         .description = "mirror",
16166         .field_bit_size = 2,
16167         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16168         },
16169         {
16170         .description = "drop",
16171         .field_bit_size = 1,
16172         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16173         },
16174         {
16175         .description = "hit",
16176         .field_bit_size = 1,
16177         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16178         },
16179         {
16180         .description = "type",
16181         .field_bit_size = 1,
16182         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16183         },
16184         /* class_tid: 1, wh_plus, table: l2_cntxt_cache_0 */
16185         {
16186         .description = "l2_cntxt_id",
16187         .field_bit_size = 10,
16188         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
16189         .result_operand = {
16190                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
16191                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
16192                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
16193                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
16194         },
16195         /* class_tid: 1, wh_plus, table: l2_cntxt_tcam_0 */
16196         {
16197         .description = "l2_cntxt_id",
16198         .field_bit_size = 10,
16199         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
16200         .result_operand = {
16201                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
16202                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
16203                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
16204                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
16205         },
16206         {
16207         .description = "prof_func_id",
16208         .field_bit_size = 7,
16209         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
16210         .result_operand = {
16211                 (BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID >> 8) & 0xff,
16212                 BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID & 0xff,
16213                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
16214                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
16215         },
16216         {
16217         .description = "l2_byp_lkup_en",
16218         .field_bit_size = 1,
16219         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16220         },
16221         {
16222         .description = "parif",
16223         .field_bit_size = 4,
16224         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,
16225         .result_operand = {
16226                 (BNXT_ULP_CF_IDX_PHY_PORT_PARIF >> 8) & 0xff,
16227                 BNXT_ULP_CF_IDX_PHY_PORT_PARIF & 0xff,
16228                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
16229                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
16230         },
16231         {
16232         .description = "allowed_pri",
16233         .field_bit_size = 8,
16234         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16235         },
16236         {
16237         .description = "default_pri",
16238         .field_bit_size = 3,
16239         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16240         },
16241         {
16242         .description = "allowed_tpid",
16243         .field_bit_size = 6,
16244         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16245         },
16246         {
16247         .description = "default_tpid",
16248         .field_bit_size = 3,
16249         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16250         },
16251         {
16252         .description = "bd_act_en",
16253         .field_bit_size = 1,
16254         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16255         },
16256         {
16257         .description = "sp_rec_ptr",
16258         .field_bit_size = 16,
16259         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16260         },
16261         {
16262         .description = "byp_sp_lkup",
16263         .field_bit_size = 1,
16264         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
16265         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
16266                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
16267         },
16268         {
16269         .description = "pri_anti_spoof_ctl",
16270         .field_bit_size = 2,
16271         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16272         },
16273         {
16274         .description = "tpid_anti_spoof_ctl",
16275         .field_bit_size = 2,
16276         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16277         },
16278         /* class_tid: 1, wh_plus, table: parif_def_lkup_arec_ptr_0 */
16279         {
16280         .description = "act_rec_ptr",
16281         .field_bit_size = 32,
16282         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
16283         .result_operand = {
16284                 (BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR >> 8) & 0xff,
16285                 BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR & 0xff,
16286                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
16287                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
16288         },
16289         /* class_tid: 1, wh_plus, table: parif_def_arec_ptr_0 */
16290         {
16291         .description = "act_rec_ptr",
16292         .field_bit_size = 32,
16293         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
16294         .result_operand = {
16295                 (BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR >> 8) & 0xff,
16296                 BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR & 0xff,
16297                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
16298                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
16299         },
16300         /* class_tid: 1, wh_plus, table: parif_def_err_arec_ptr_0 */
16301         {
16302         .description = "act_rec_ptr",
16303         .field_bit_size = 32,
16304         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
16305         .result_operand = {
16306                 (BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR >> 8) & 0xff,
16307                 BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR & 0xff,
16308                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
16309                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
16310         },
16311         /* class_tid: 2, wh_plus, table: int_full_act_record_0 */
16312         {
16313         .description = "flow_cntr_ptr",
16314         .field_bit_size = 14,
16315         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16316         },
16317         {
16318         .description = "age_enable",
16319         .field_bit_size = 1,
16320         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16321         },
16322         {
16323         .description = "agg_cntr_en",
16324         .field_bit_size = 1,
16325         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16326         },
16327         {
16328         .description = "rate_cntr_en",
16329         .field_bit_size = 1,
16330         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16331         },
16332         {
16333         .description = "flow_cntr_en",
16334         .field_bit_size = 1,
16335         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16336         },
16337         {
16338         .description = "tcpflags_key",
16339         .field_bit_size = 8,
16340         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16341         },
16342         {
16343         .description = "tcpflags_mir",
16344         .field_bit_size = 1,
16345         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16346         },
16347         {
16348         .description = "tcpflags_match",
16349         .field_bit_size = 1,
16350         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16351         },
16352         {
16353         .description = "encap_ptr",
16354         .field_bit_size = 11,
16355         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16356         },
16357         {
16358         .description = "dst_ip_ptr",
16359         .field_bit_size = 10,
16360         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16361         },
16362         {
16363         .description = "tcp_dst_port",
16364         .field_bit_size = 16,
16365         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16366         },
16367         {
16368         .description = "src_ip_ptr",
16369         .field_bit_size = 10,
16370         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16371         },
16372         {
16373         .description = "tcp_src_port",
16374         .field_bit_size = 16,
16375         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16376         },
16377         {
16378         .description = "meter_id",
16379         .field_bit_size = 10,
16380         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16381         },
16382         {
16383         .description = "l3_rdir",
16384         .field_bit_size = 1,
16385         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16386         },
16387         {
16388         .description = "tl3_rdir",
16389         .field_bit_size = 1,
16390         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16391         },
16392         {
16393         .description = "l3_ttl_dec",
16394         .field_bit_size = 1,
16395         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16396         },
16397         {
16398         .description = "tl3_ttl_dec",
16399         .field_bit_size = 1,
16400         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16401         },
16402         {
16403         .description = "decap_func",
16404         .field_bit_size = 4,
16405         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16406         },
16407         {
16408         .description = "vnic_or_vport",
16409         .field_bit_size = 12,
16410         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,
16411         .result_operand = {
16412                 (BNXT_ULP_CF_IDX_PHY_PORT_VPORT >> 8) & 0xff,
16413                 BNXT_ULP_CF_IDX_PHY_PORT_VPORT & 0xff,
16414                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
16415                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
16416         },
16417         {
16418         .description = "pop_vlan",
16419         .field_bit_size = 1,
16420         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16421         },
16422         {
16423         .description = "meter",
16424         .field_bit_size = 1,
16425         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16426         },
16427         {
16428         .description = "mirror",
16429         .field_bit_size = 2,
16430         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16431         },
16432         {
16433         .description = "drop",
16434         .field_bit_size = 1,
16435         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16436         },
16437         {
16438         .description = "hit",
16439         .field_bit_size = 1,
16440         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16441         },
16442         {
16443         .description = "type",
16444         .field_bit_size = 1,
16445         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16446         },
16447         /* class_tid: 2, wh_plus, table: l2_cntxt_tcam_vfr_0 */
16448         {
16449         .description = "act_record_ptr",
16450         .field_bit_size = 16,
16451         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16452         },
16453         {
16454         .description = "reserved",
16455         .field_bit_size = 1,
16456         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16457         },
16458         {
16459         .description = "l2_byp_lkup_en",
16460         .field_bit_size = 1,
16461         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
16462         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
16463                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
16464         },
16465         {
16466         .description = "parif",
16467         .field_bit_size = 4,
16468         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,
16469         .result_operand = {
16470                 (BNXT_ULP_CF_IDX_DRV_FUNC_PARIF >> 8) & 0xff,
16471                 BNXT_ULP_CF_IDX_DRV_FUNC_PARIF & 0xff,
16472                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
16473                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
16474         },
16475         {
16476         .description = "allowed_pri",
16477         .field_bit_size = 8,
16478         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16479         },
16480         {
16481         .description = "default_pri",
16482         .field_bit_size = 3,
16483         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16484         },
16485         {
16486         .description = "allowed_tpid",
16487         .field_bit_size = 6,
16488         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16489         },
16490         {
16491         .description = "default_tpid",
16492         .field_bit_size = 3,
16493         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16494         },
16495         {
16496         .description = "bd_act_en",
16497         .field_bit_size = 1,
16498         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
16499         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
16500                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
16501         },
16502         {
16503         .description = "sp_rec_ptr",
16504         .field_bit_size = 16,
16505         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16506         },
16507         {
16508         .description = "byp_sp_lkup",
16509         .field_bit_size = 1,
16510         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
16511         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
16512                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
16513         },
16514         {
16515         .description = "pri_anti_spoof_ctl",
16516         .field_bit_size = 2,
16517         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16518         },
16519         {
16520         .description = "tpid_anti_spoof_ctl",
16521         .field_bit_size = 2,
16522         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16523         },
16524         /* class_tid: 2, wh_plus, table: l2_cntxt_cache_0 */
16525         {
16526         .description = "l2_cntxt_id",
16527         .field_bit_size = 10,
16528         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
16529         .result_operand = {
16530                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
16531                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
16532                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
16533                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
16534         },
16535         /* class_tid: 2, wh_plus, table: l2_cntxt_tcam_0 */
16536         {
16537         .description = "l2_cntxt_id",
16538         .field_bit_size = 10,
16539         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
16540         .result_operand = {
16541                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
16542                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
16543                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
16544                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
16545         },
16546         {
16547         .description = "prof_func_id",
16548         .field_bit_size = 7,
16549         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
16550         .result_operand = {
16551                 (BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID >> 8) & 0xff,
16552                 BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID & 0xff,
16553                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
16554                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
16555         },
16556         {
16557         .description = "l2_byp_lkup_en",
16558         .field_bit_size = 1,
16559         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16560         },
16561         {
16562         .description = "parif",
16563         .field_bit_size = 4,
16564         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,
16565         .result_operand = {
16566                 (BNXT_ULP_CF_IDX_DRV_FUNC_PARIF >> 8) & 0xff,
16567                 BNXT_ULP_CF_IDX_DRV_FUNC_PARIF & 0xff,
16568                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
16569                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
16570         },
16571         {
16572         .description = "allowed_pri",
16573         .field_bit_size = 8,
16574         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16575         },
16576         {
16577         .description = "default_pri",
16578         .field_bit_size = 3,
16579         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16580         },
16581         {
16582         .description = "allowed_tpid",
16583         .field_bit_size = 6,
16584         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16585         },
16586         {
16587         .description = "default_tpid",
16588         .field_bit_size = 3,
16589         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16590         },
16591         {
16592         .description = "bd_act_en",
16593         .field_bit_size = 1,
16594         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16595         },
16596         {
16597         .description = "sp_rec_ptr",
16598         .field_bit_size = 16,
16599         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16600         },
16601         {
16602         .description = "byp_sp_lkup",
16603         .field_bit_size = 1,
16604         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
16605         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
16606                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
16607         },
16608         {
16609         .description = "pri_anti_spoof_ctl",
16610         .field_bit_size = 2,
16611         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16612         },
16613         {
16614         .description = "tpid_anti_spoof_ctl",
16615         .field_bit_size = 2,
16616         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16617         },
16618         /* class_tid: 2, wh_plus, table: parif_def_lkup_arec_ptr_0 */
16619         {
16620         .description = "act_rec_ptr",
16621         .field_bit_size = 32,
16622         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
16623         .result_operand = {
16624                 (BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR >> 8) & 0xff,
16625                 BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR & 0xff,
16626                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
16627                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
16628         },
16629         /* class_tid: 2, wh_plus, table: parif_def_arec_ptr_0 */
16630         {
16631         .description = "act_rec_ptr",
16632         .field_bit_size = 32,
16633         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
16634         .result_operand = {
16635                 (BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR >> 8) & 0xff,
16636                 BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR & 0xff,
16637                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
16638                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
16639         },
16640         /* class_tid: 2, wh_plus, table: parif_def_err_arec_ptr_0 */
16641         {
16642         .description = "act_rec_ptr",
16643         .field_bit_size = 32,
16644         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
16645         .result_operand = {
16646                 (BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR >> 8) & 0xff,
16647                 BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR & 0xff,
16648                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
16649                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
16650         },
16651         /* class_tid: 3, wh_plus, table: egr_int_vtag_encap_record_0 */
16652         {
16653         .description = "ecv_tun_type",
16654         .field_bit_size = 3,
16655         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16656         },
16657         {
16658         .description = "ecv_l4_type",
16659         .field_bit_size = 3,
16660         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16661         },
16662         {
16663         .description = "ecv_l3_type",
16664         .field_bit_size = 3,
16665         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16666         },
16667         {
16668         .description = "ecv_l2_en",
16669         .field_bit_size = 1,
16670         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16671         },
16672         {
16673         .description = "ecv_vtag_type",
16674         .field_bit_size = 4,
16675         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
16676         .result_operand = {
16677                 BNXT_ULP_SYM_ECV_VTAG_TYPE_ADD_1_ENCAP_PRI,
16678                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
16679                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
16680         },
16681         {
16682         .description = "ecv_custom_en",
16683         .field_bit_size = 1,
16684         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16685         },
16686         {
16687         .description = "ecv_valid",
16688         .field_bit_size = 1,
16689         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
16690         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
16691                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
16692         },
16693         {
16694         .description = "vtag_tpid",
16695         .field_bit_size = 16,
16696         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
16697         .result_operand = {0x81, 0x00}
16698         },
16699         {
16700         .description = "vtag_vid",
16701         .field_bit_size = 12,
16702         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,
16703         .result_operand = {
16704                 (BNXT_ULP_CF_IDX_DEV_PORT_ID >> 8) & 0xff,
16705                 BNXT_ULP_CF_IDX_DEV_PORT_ID & 0xff,
16706                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
16707                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
16708         },
16709         {
16710         .description = "vtag_de",
16711         .field_bit_size = 1,
16712         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16713         },
16714         {
16715         .description = "vtag_pcp",
16716         .field_bit_size = 3,
16717         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16718         },
16719         {
16720         .description = "spare",
16721         .field_bit_size = 16,
16722         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16723         },
16724         /* class_tid: 3, wh_plus, table: egr_int_full_act_record_0 */
16725         {
16726         .description = "flow_cntr_ptr",
16727         .field_bit_size = 14,
16728         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16729         },
16730         {
16731         .description = "age_enable",
16732         .field_bit_size = 1,
16733         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16734         },
16735         {
16736         .description = "agg_cntr_en",
16737         .field_bit_size = 1,
16738         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16739         },
16740         {
16741         .description = "rate_cntr_en",
16742         .field_bit_size = 1,
16743         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16744         },
16745         {
16746         .description = "flow_cntr_en",
16747         .field_bit_size = 1,
16748         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16749         },
16750         {
16751         .description = "tcpflags_key",
16752         .field_bit_size = 8,
16753         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16754         },
16755         {
16756         .description = "tcpflags_mir",
16757         .field_bit_size = 1,
16758         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16759         },
16760         {
16761         .description = "tcpflags_match",
16762         .field_bit_size = 1,
16763         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16764         },
16765         {
16766         .description = "encap_ptr",
16767         .field_bit_size = 11,
16768         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
16769         .result_operand = {
16770                 (BNXT_ULP_REGFILE_INDEX_ENCAP_PTR_0 >> 8) & 0xff,
16771                 BNXT_ULP_REGFILE_INDEX_ENCAP_PTR_0 & 0xff,
16772                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
16773                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
16774         },
16775         {
16776         .description = "dst_ip_ptr",
16777         .field_bit_size = 10,
16778         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16779         },
16780         {
16781         .description = "tcp_dst_port",
16782         .field_bit_size = 16,
16783         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16784         },
16785         {
16786         .description = "src_ip_ptr",
16787         .field_bit_size = 10,
16788         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16789         },
16790         {
16791         .description = "tcp_src_port",
16792         .field_bit_size = 16,
16793         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16794         },
16795         {
16796         .description = "meter_id",
16797         .field_bit_size = 10,
16798         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16799         },
16800         {
16801         .description = "l3_rdir",
16802         .field_bit_size = 1,
16803         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16804         },
16805         {
16806         .description = "tl3_rdir",
16807         .field_bit_size = 1,
16808         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16809         },
16810         {
16811         .description = "l3_ttl_dec",
16812         .field_bit_size = 1,
16813         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16814         },
16815         {
16816         .description = "tl3_ttl_dec",
16817         .field_bit_size = 1,
16818         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16819         },
16820         {
16821         .description = "decap_func",
16822         .field_bit_size = 4,
16823         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16824         },
16825         {
16826         .description = "vnic_or_vport",
16827         .field_bit_size = 12,
16828         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
16829         .result_operand = {
16830                 (BNXT_ULP_SYM_WH_PLUS_LOOPBACK_PORT >> 8) & 0xff,
16831                 BNXT_ULP_SYM_WH_PLUS_LOOPBACK_PORT & 0xff,
16832                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
16833                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
16834         },
16835         {
16836         .description = "pop_vlan",
16837         .field_bit_size = 1,
16838         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16839         },
16840         {
16841         .description = "meter",
16842         .field_bit_size = 1,
16843         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16844         },
16845         {
16846         .description = "mirror",
16847         .field_bit_size = 2,
16848         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16849         },
16850         {
16851         .description = "drop",
16852         .field_bit_size = 1,
16853         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16854         },
16855         {
16856         .description = "hit",
16857         .field_bit_size = 1,
16858         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16859         },
16860         {
16861         .description = "type",
16862         .field_bit_size = 1,
16863         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16864         },
16865         /* class_tid: 3, wh_plus, table: egr_l2_cntxt_cache_0 */
16866         /* class_tid: 3, wh_plus, table: egr_l2_cntxt_tcam_0 */
16867         {
16868         .description = "act_record_ptr",
16869         .field_bit_size = 16,
16870         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16871         },
16872         {
16873         .description = "reserved",
16874         .field_bit_size = 1,
16875         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16876         },
16877         {
16878         .description = "l2_byp_lkup_en",
16879         .field_bit_size = 1,
16880         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
16881         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
16882                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
16883         },
16884         {
16885         .description = "parif",
16886         .field_bit_size = 4,
16887         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16888         },
16889         {
16890         .description = "allowed_pri",
16891         .field_bit_size = 8,
16892         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16893         },
16894         {
16895         .description = "default_pri",
16896         .field_bit_size = 3,
16897         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16898         },
16899         {
16900         .description = "allowed_tpid",
16901         .field_bit_size = 6,
16902         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16903         },
16904         {
16905         .description = "default_tpid",
16906         .field_bit_size = 3,
16907         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16908         },
16909         {
16910         .description = "bd_act_en",
16911         .field_bit_size = 1,
16912         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
16913         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
16914                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
16915         },
16916         {
16917         .description = "sp_rec_ptr",
16918         .field_bit_size = 16,
16919         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16920         },
16921         {
16922         .description = "byp_sp_lkup",
16923         .field_bit_size = 1,
16924         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
16925         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
16926                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
16927         },
16928         {
16929         .description = "pri_anti_spoof_ctl",
16930         .field_bit_size = 2,
16931         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16932         },
16933         {
16934         .description = "tpid_anti_spoof_ctl",
16935         .field_bit_size = 2,
16936         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16937         },
16938         /* class_tid: 3, wh_plus, table: ing_int_full_act_record_0 */
16939         {
16940         .description = "flow_cntr_ptr",
16941         .field_bit_size = 14,
16942         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16943         },
16944         {
16945         .description = "age_enable",
16946         .field_bit_size = 1,
16947         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16948         },
16949         {
16950         .description = "agg_cntr_en",
16951         .field_bit_size = 1,
16952         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16953         },
16954         {
16955         .description = "rate_cntr_en",
16956         .field_bit_size = 1,
16957         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16958         },
16959         {
16960         .description = "flow_cntr_en",
16961         .field_bit_size = 1,
16962         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16963         },
16964         {
16965         .description = "tcpflags_key",
16966         .field_bit_size = 8,
16967         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16968         },
16969         {
16970         .description = "tcpflags_mir",
16971         .field_bit_size = 1,
16972         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16973         },
16974         {
16975         .description = "tcpflags_match",
16976         .field_bit_size = 1,
16977         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16978         },
16979         {
16980         .description = "encap_ptr",
16981         .field_bit_size = 11,
16982         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16983         },
16984         {
16985         .description = "dst_ip_ptr",
16986         .field_bit_size = 10,
16987         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16988         },
16989         {
16990         .description = "tcp_dst_port",
16991         .field_bit_size = 16,
16992         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16993         },
16994         {
16995         .description = "src_ip_ptr",
16996         .field_bit_size = 10,
16997         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16998         },
16999         {
17000         .description = "tcp_src_port",
17001         .field_bit_size = 16,
17002         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17003         },
17004         {
17005         .description = "meter_id",
17006         .field_bit_size = 10,
17007         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17008         },
17009         {
17010         .description = "l3_rdir",
17011         .field_bit_size = 1,
17012         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17013         },
17014         {
17015         .description = "tl3_rdir",
17016         .field_bit_size = 1,
17017         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17018         },
17019         {
17020         .description = "l3_ttl_dec",
17021         .field_bit_size = 1,
17022         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17023         },
17024         {
17025         .description = "tl3_ttl_dec",
17026         .field_bit_size = 1,
17027         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17028         },
17029         {
17030         .description = "decap_func",
17031         .field_bit_size = 4,
17032         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17033         },
17034         {
17035         .description = "vnic_or_vport",
17036         .field_bit_size = 12,
17037         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,
17038         .result_operand = {
17039                 (BNXT_ULP_CF_IDX_VF_FUNC_VNIC >> 8) & 0xff,
17040                 BNXT_ULP_CF_IDX_VF_FUNC_VNIC & 0xff,
17041                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
17042                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
17043         },
17044         {
17045         .description = "pop_vlan",
17046         .field_bit_size = 1,
17047         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
17048         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
17049                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
17050         },
17051         {
17052         .description = "meter",
17053         .field_bit_size = 1,
17054         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17055         },
17056         {
17057         .description = "mirror",
17058         .field_bit_size = 2,
17059         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17060         },
17061         {
17062         .description = "drop",
17063         .field_bit_size = 1,
17064         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17065         },
17066         {
17067         .description = "hit",
17068         .field_bit_size = 1,
17069         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17070         },
17071         {
17072         .description = "type",
17073         .field_bit_size = 1,
17074         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17075         },
17076         /* class_tid: 3, wh_plus, table: ing_l2_cntxt_dtagged_0 */
17077         {
17078         .description = "act_record_ptr",
17079         .field_bit_size = 16,
17080         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
17081         .result_operand = {
17082                 (BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR >> 8) & 0xff,
17083                 BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR & 0xff,
17084                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
17085                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
17086         },
17087         {
17088         .description = "reserved",
17089         .field_bit_size = 1,
17090         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17091         },
17092         {
17093         .description = "l2_byp_lkup_en",
17094         .field_bit_size = 1,
17095         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
17096         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
17097                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
17098         },
17099         {
17100         .description = "parif",
17101         .field_bit_size = 4,
17102         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17103         },
17104         {
17105         .description = "allowed_pri",
17106         .field_bit_size = 8,
17107         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17108         },
17109         {
17110         .description = "default_pri",
17111         .field_bit_size = 3,
17112         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17113         },
17114         {
17115         .description = "allowed_tpid",
17116         .field_bit_size = 6,
17117         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17118         },
17119         {
17120         .description = "default_tpid",
17121         .field_bit_size = 3,
17122         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17123         },
17124         {
17125         .description = "bd_act_en",
17126         .field_bit_size = 1,
17127         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17128         },
17129         {
17130         .description = "sp_rec_ptr",
17131         .field_bit_size = 16,
17132         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17133         },
17134         {
17135         .description = "byp_sp_lkup",
17136         .field_bit_size = 1,
17137         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
17138         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
17139                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
17140         },
17141         {
17142         .description = "pri_anti_spoof_ctl",
17143         .field_bit_size = 2,
17144         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17145         },
17146         {
17147         .description = "tpid_anti_spoof_ctl",
17148         .field_bit_size = 2,
17149         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17150         },
17151         /* class_tid: 3, wh_plus, table: ing_l2_cntxt_stagged_0 */
17152         {
17153         .description = "act_record_ptr",
17154         .field_bit_size = 16,
17155         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
17156         .result_operand = {
17157                 (BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR >> 8) & 0xff,
17158                 BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR & 0xff,
17159                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
17160                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
17161         },
17162         {
17163         .description = "reserved",
17164         .field_bit_size = 1,
17165         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17166         },
17167         {
17168         .description = "l2_byp_lkup_en",
17169         .field_bit_size = 1,
17170         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
17171         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
17172                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
17173         },
17174         {
17175         .description = "parif",
17176         .field_bit_size = 4,
17177         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17178         },
17179         {
17180         .description = "allowed_pri",
17181         .field_bit_size = 8,
17182         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17183         },
17184         {
17185         .description = "default_pri",
17186         .field_bit_size = 3,
17187         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17188         },
17189         {
17190         .description = "allowed_tpid",
17191         .field_bit_size = 6,
17192         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17193         },
17194         {
17195         .description = "default_tpid",
17196         .field_bit_size = 3,
17197         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17198         },
17199         {
17200         .description = "bd_act_en",
17201         .field_bit_size = 1,
17202         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17203         },
17204         {
17205         .description = "sp_rec_ptr",
17206         .field_bit_size = 16,
17207         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17208         },
17209         {
17210         .description = "byp_sp_lkup",
17211         .field_bit_size = 1,
17212         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
17213         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
17214                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
17215         },
17216         {
17217         .description = "pri_anti_spoof_ctl",
17218         .field_bit_size = 2,
17219         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17220         },
17221         {
17222         .description = "tpid_anti_spoof_ctl",
17223         .field_bit_size = 2,
17224         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17225         },
17226         /* class_tid: 4, wh_plus, table: egr_l2_cntxt_cache_0 */
17227         {
17228         .description = "l2_cntxt_id",
17229         .field_bit_size = 10,
17230         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
17231         .result_operand = {
17232                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
17233                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
17234                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
17235                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
17236         },
17237         /* class_tid: 4, wh_plus, table: egr_l2_cntxt_tcam_0 */
17238         {
17239         .description = "l2_cntxt_id",
17240         .field_bit_size = 10,
17241         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
17242         .result_operand = {
17243                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
17244                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
17245                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
17246                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
17247         },
17248         {
17249         .description = "prof_func_id",
17250         .field_bit_size = 7,
17251         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
17252         .result_operand = {
17253                 (BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID >> 8) & 0xff,
17254                 BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID & 0xff,
17255                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
17256                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
17257         },
17258         {
17259         .description = "l2_byp_lkup_en",
17260         .field_bit_size = 1,
17261         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17262         },
17263         {
17264         .description = "parif",
17265         .field_bit_size = 4,
17266         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
17267         .result_operand = {
17268                 BNXT_ULP_SYM_VF_FUNC_PARIF,
17269                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
17270                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
17271         },
17272         {
17273         .description = "allowed_pri",
17274         .field_bit_size = 8,
17275         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17276         },
17277         {
17278         .description = "default_pri",
17279         .field_bit_size = 3,
17280         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17281         },
17282         {
17283         .description = "allowed_tpid",
17284         .field_bit_size = 6,
17285         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17286         },
17287         {
17288         .description = "default_tpid",
17289         .field_bit_size = 3,
17290         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17291         },
17292         {
17293         .description = "bd_act_en",
17294         .field_bit_size = 1,
17295         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17296         },
17297         {
17298         .description = "sp_rec_ptr",
17299         .field_bit_size = 16,
17300         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17301         },
17302         {
17303         .description = "byp_sp_lkup",
17304         .field_bit_size = 1,
17305         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
17306         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
17307                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
17308         },
17309         {
17310         .description = "pri_anti_spoof_ctl",
17311         .field_bit_size = 2,
17312         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17313         },
17314         {
17315         .description = "tpid_anti_spoof_ctl",
17316         .field_bit_size = 2,
17317         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17318         },
17319         /* class_tid: 4, wh_plus, table: egr_parif_def_lkup_arec_ptr_0 */
17320         {
17321         .description = "act_rec_ptr",
17322         .field_bit_size = 32,
17323         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
17324         .result_operand = {
17325                 (BNXT_ULP_GLB_REGFILE_INDEX_GLB_LB_AREC_PTR >> 8) & 0xff,
17326                 BNXT_ULP_GLB_REGFILE_INDEX_GLB_LB_AREC_PTR & 0xff,
17327                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
17328                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
17329         },
17330         /* class_tid: 4, wh_plus, table: egr_parif_def_arec_ptr_0 */
17331         {
17332         .description = "act_rec_ptr",
17333         .field_bit_size = 32,
17334         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
17335         .result_operand = {
17336                 (BNXT_ULP_GLB_REGFILE_INDEX_GLB_LB_AREC_PTR >> 8) & 0xff,
17337                 BNXT_ULP_GLB_REGFILE_INDEX_GLB_LB_AREC_PTR & 0xff,
17338                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
17339                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
17340         },
17341         /* class_tid: 4, wh_plus, table: egr_parif_def_err_arec_ptr_0 */
17342         {
17343         .description = "act_rec_ptr",
17344         .field_bit_size = 32,
17345         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
17346         .result_operand = {
17347                 (BNXT_ULP_GLB_REGFILE_INDEX_GLB_LB_AREC_PTR >> 8) & 0xff,
17348                 BNXT_ULP_GLB_REGFILE_INDEX_GLB_LB_AREC_PTR & 0xff,
17349                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
17350                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
17351         },
17352         /* class_tid: 4, wh_plus, table: ing_int_full_act_record_0 */
17353         {
17354         .description = "flow_cntr_ptr",
17355         .field_bit_size = 14,
17356         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17357         },
17358         {
17359         .description = "age_enable",
17360         .field_bit_size = 1,
17361         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17362         },
17363         {
17364         .description = "agg_cntr_en",
17365         .field_bit_size = 1,
17366         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17367         },
17368         {
17369         .description = "rate_cntr_en",
17370         .field_bit_size = 1,
17371         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17372         },
17373         {
17374         .description = "flow_cntr_en",
17375         .field_bit_size = 1,
17376         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17377         },
17378         {
17379         .description = "tcpflags_key",
17380         .field_bit_size = 8,
17381         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17382         },
17383         {
17384         .description = "tcpflags_mir",
17385         .field_bit_size = 1,
17386         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17387         },
17388         {
17389         .description = "tcpflags_match",
17390         .field_bit_size = 1,
17391         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17392         },
17393         {
17394         .description = "encap_ptr",
17395         .field_bit_size = 11,
17396         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17397         },
17398         {
17399         .description = "dst_ip_ptr",
17400         .field_bit_size = 10,
17401         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17402         },
17403         {
17404         .description = "tcp_dst_port",
17405         .field_bit_size = 16,
17406         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17407         },
17408         {
17409         .description = "src_ip_ptr",
17410         .field_bit_size = 10,
17411         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17412         },
17413         {
17414         .description = "tcp_src_port",
17415         .field_bit_size = 16,
17416         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17417         },
17418         {
17419         .description = "meter_id",
17420         .field_bit_size = 10,
17421         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17422         },
17423         {
17424         .description = "l3_rdir",
17425         .field_bit_size = 1,
17426         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17427         },
17428         {
17429         .description = "tl3_rdir",
17430         .field_bit_size = 1,
17431         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17432         },
17433         {
17434         .description = "l3_ttl_dec",
17435         .field_bit_size = 1,
17436         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17437         },
17438         {
17439         .description = "tl3_ttl_dec",
17440         .field_bit_size = 1,
17441         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17442         },
17443         {
17444         .description = "decap_func",
17445         .field_bit_size = 4,
17446         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17447         },
17448         {
17449         .description = "vnic_or_vport",
17450         .field_bit_size = 12,
17451         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,
17452         .result_operand = {
17453                 (BNXT_ULP_CF_IDX_DRV_FUNC_VNIC >> 8) & 0xff,
17454                 BNXT_ULP_CF_IDX_DRV_FUNC_VNIC & 0xff,
17455                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
17456                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
17457         },
17458         {
17459         .description = "pop_vlan",
17460         .field_bit_size = 1,
17461         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17462         },
17463         {
17464         .description = "meter",
17465         .field_bit_size = 1,
17466         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17467         },
17468         {
17469         .description = "mirror",
17470         .field_bit_size = 2,
17471         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17472         },
17473         {
17474         .description = "drop",
17475         .field_bit_size = 1,
17476         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17477         },
17478         {
17479         .description = "hit",
17480         .field_bit_size = 1,
17481         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17482         },
17483         {
17484         .description = "type",
17485         .field_bit_size = 1,
17486         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17487         },
17488         /* class_tid: 4, wh_plus, table: ing_l2_cntxt_tcam_0 */
17489         {
17490         .description = "act_record_ptr",
17491         .field_bit_size = 16,
17492         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
17493         .result_operand = {
17494                 (BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR >> 8) & 0xff,
17495                 BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR & 0xff,
17496                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
17497                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
17498         },
17499         {
17500         .description = "reserved",
17501         .field_bit_size = 1,
17502         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17503         },
17504         {
17505         .description = "l2_byp_lkup_en",
17506         .field_bit_size = 1,
17507         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
17508         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
17509                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
17510         },
17511         {
17512         .description = "parif",
17513         .field_bit_size = 4,
17514         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17515         },
17516         {
17517         .description = "allowed_pri",
17518         .field_bit_size = 8,
17519         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17520         },
17521         {
17522         .description = "default_pri",
17523         .field_bit_size = 3,
17524         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17525         },
17526         {
17527         .description = "allowed_tpid",
17528         .field_bit_size = 6,
17529         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17530         },
17531         {
17532         .description = "default_tpid",
17533         .field_bit_size = 3,
17534         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17535         },
17536         {
17537         .description = "bd_act_en",
17538         .field_bit_size = 1,
17539         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17540         },
17541         {
17542         .description = "sp_rec_ptr",
17543         .field_bit_size = 16,
17544         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17545         },
17546         {
17547         .description = "byp_sp_lkup",
17548         .field_bit_size = 1,
17549         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
17550         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
17551                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
17552         },
17553         {
17554         .description = "pri_anti_spoof_ctl",
17555         .field_bit_size = 2,
17556         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17557         },
17558         {
17559         .description = "tpid_anti_spoof_ctl",
17560         .field_bit_size = 2,
17561         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17562         },
17563         /* class_tid: 5, wh_plus, table: int_full_act_record_0 */
17564         {
17565         .description = "flow_cntr_ptr",
17566         .field_bit_size = 14,
17567         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17568         },
17569         {
17570         .description = "age_enable",
17571         .field_bit_size = 1,
17572         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17573         },
17574         {
17575         .description = "agg_cntr_en",
17576         .field_bit_size = 1,
17577         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17578         },
17579         {
17580         .description = "rate_cntr_en",
17581         .field_bit_size = 1,
17582         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17583         },
17584         {
17585         .description = "flow_cntr_en",
17586         .field_bit_size = 1,
17587         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17588         },
17589         {
17590         .description = "tcpflags_key",
17591         .field_bit_size = 8,
17592         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17593         },
17594         {
17595         .description = "tcpflags_mir",
17596         .field_bit_size = 1,
17597         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17598         },
17599         {
17600         .description = "tcpflags_match",
17601         .field_bit_size = 1,
17602         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17603         },
17604         {
17605         .description = "encap_ptr",
17606         .field_bit_size = 11,
17607         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17608         },
17609         {
17610         .description = "dst_ip_ptr",
17611         .field_bit_size = 10,
17612         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17613         },
17614         {
17615         .description = "tcp_dst_port",
17616         .field_bit_size = 16,
17617         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17618         },
17619         {
17620         .description = "src_ip_ptr",
17621         .field_bit_size = 10,
17622         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17623         },
17624         {
17625         .description = "tcp_src_port",
17626         .field_bit_size = 16,
17627         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17628         },
17629         {
17630         .description = "meter_id",
17631         .field_bit_size = 10,
17632         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17633         },
17634         {
17635         .description = "l3_rdir",
17636         .field_bit_size = 1,
17637         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17638         },
17639         {
17640         .description = "tl3_rdir",
17641         .field_bit_size = 1,
17642         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17643         },
17644         {
17645         .description = "l3_ttl_dec",
17646         .field_bit_size = 1,
17647         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17648         },
17649         {
17650         .description = "tl3_ttl_dec",
17651         .field_bit_size = 1,
17652         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17653         },
17654         {
17655         .description = "decap_func",
17656         .field_bit_size = 4,
17657         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17658         },
17659         {
17660         .description = "vnic_or_vport",
17661         .field_bit_size = 12,
17662         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
17663         .result_operand = {
17664                 (BNXT_ULP_SYM_WH_PLUS_LOOPBACK_PORT >> 8) & 0xff,
17665                 BNXT_ULP_SYM_WH_PLUS_LOOPBACK_PORT & 0xff,
17666                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
17667                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
17668         },
17669         {
17670         .description = "pop_vlan",
17671         .field_bit_size = 1,
17672         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17673         },
17674         {
17675         .description = "meter",
17676         .field_bit_size = 1,
17677         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17678         },
17679         {
17680         .description = "mirror",
17681         .field_bit_size = 2,
17682         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17683         },
17684         {
17685         .description = "drop",
17686         .field_bit_size = 1,
17687         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17688         },
17689         {
17690         .description = "hit",
17691         .field_bit_size = 1,
17692         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17693         },
17694         {
17695         .description = "type",
17696         .field_bit_size = 1,
17697         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17698         },
17699         /* class_tid: 6, wh_plus, table: l2_cntxt_tcam_0 */
17700         {
17701         .description = "l2_cntxt_id",
17702         .field_bit_size = 10,
17703         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
17704         .result_operand = {
17705                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
17706                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
17707                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
17708                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
17709         },
17710         {
17711         .description = "prof_func_id",
17712         .field_bit_size = 7,
17713         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
17714         .result_operand = {
17715                 (BNXT_ULP_GLB_REGFILE_INDEX_L2_PROF_FUNC_ID >> 8) & 0xff,
17716                 BNXT_ULP_GLB_REGFILE_INDEX_L2_PROF_FUNC_ID & 0xff,
17717                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
17718                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
17719         },
17720         {
17721         .description = "l2_byp_lkup_en",
17722         .field_bit_size = 1,
17723         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17724         },
17725         {
17726         .description = "parif",
17727         .field_bit_size = 4,
17728         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,
17729         .result_operand = {
17730                 (BNXT_ULP_CF_IDX_PHY_PORT_PARIF >> 8) & 0xff,
17731                 BNXT_ULP_CF_IDX_PHY_PORT_PARIF & 0xff,
17732                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
17733                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
17734         },
17735         {
17736         .description = "allowed_pri",
17737         .field_bit_size = 8,
17738         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17739         },
17740         {
17741         .description = "default_pri",
17742         .field_bit_size = 3,
17743         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17744         },
17745         {
17746         .description = "allowed_tpid",
17747         .field_bit_size = 6,
17748         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17749         },
17750         {
17751         .description = "default_tpid",
17752         .field_bit_size = 3,
17753         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17754         },
17755         {
17756         .description = "bd_act_en",
17757         .field_bit_size = 1,
17758         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17759         },
17760         {
17761         .description = "sp_rec_ptr",
17762         .field_bit_size = 16,
17763         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17764         },
17765         {
17766         .description = "byp_sp_lkup",
17767         .field_bit_size = 1,
17768         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
17769         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
17770                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
17771         },
17772         {
17773         .description = "pri_anti_spoof_ctl",
17774         .field_bit_size = 2,
17775         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17776         },
17777         {
17778         .description = "tpid_anti_spoof_ctl",
17779         .field_bit_size = 2,
17780         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17781         },
17782         /* class_tid: 6, wh_plus, table: profile_tcam_cache_0 */
17783         {
17784         .description = "em_profile_id",
17785         .field_bit_size = 10,
17786         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
17787         .result_operand = {
17788                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
17789                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
17790                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
17791                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
17792         },
17793         /* class_tid: 6, wh_plus, table: profile_tcam_0 */
17794         {
17795         .description = "wc_key_id",
17796         .field_bit_size = 4,
17797         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17798         },
17799         {
17800         .description = "wc_profile_id",
17801         .field_bit_size = 8,
17802         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17803         },
17804         {
17805         .description = "wc_search_en",
17806         .field_bit_size = 1,
17807         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17808         },
17809         {
17810         .description = "em_key_mask",
17811         .field_bit_size = 10,
17812         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
17813         .result_operand = {
17814                 (0x0005 >> 8) & 0xff,
17815                 0x0005 & 0xff,
17816                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
17817                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
17818         },
17819         {
17820         .description = "em_key_id",
17821         .field_bit_size = 5,
17822         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
17823         .result_operand = {0x15, 0x00, 0x00, 0x00, 0x00, 0x00,
17824                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
17825         },
17826         {
17827         .description = "em_profile_id",
17828         .field_bit_size = 8,
17829         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
17830         .result_operand = {
17831                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
17832                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
17833                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
17834                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
17835         },
17836         {
17837         .description = "em_search_en",
17838         .field_bit_size = 1,
17839         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
17840         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
17841                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
17842         },
17843         {
17844         .description = "pl_byp_lkup_en",
17845         .field_bit_size = 1,
17846         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17847         },
17848         /* class_tid: 6, wh_plus, table: ext_em_0 */
17849         {
17850         .description = "act_rec_ptr",
17851         .field_bit_size = 33,
17852         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
17853         .result_operand = {
17854                 (BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR >> 8) & 0xff,
17855                 BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR & 0xff,
17856                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
17857                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
17858         },
17859         {
17860         .description = "ext_flow_ctr",
17861         .field_bit_size = 1,
17862         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
17863         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
17864                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
17865         },
17866         {
17867         .description = "act_rec_int",
17868         .field_bit_size = 1,
17869         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17870         },
17871         {
17872         .description = "act_rec_size",
17873         .field_bit_size = 5,
17874         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
17875         .result_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,
17876                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
17877         },
17878         {
17879         .description = "key_size",
17880         .field_bit_size = 9,
17881         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
17882         .result_operand = {
17883                 (0x00c5 >> 8) & 0xff,
17884                 0x00c5 & 0xff,
17885                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
17886                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
17887         },
17888         {
17889         .description = "reserved",
17890         .field_bit_size = 11,
17891         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17892         },
17893         {
17894         .description = "strength",
17895         .field_bit_size = 2,
17896         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
17897         .result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,
17898                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
17899         },
17900         {
17901         .description = "l1_cacheable",
17902         .field_bit_size = 1,
17903         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17904         },
17905         {
17906         .description = "valid",
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         /* class_tid: 6, wh_plus, table: int_em_0 */
17913         {
17914         .description = "act_rec_ptr",
17915         .field_bit_size = 33,
17916         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
17917         .result_operand = {
17918                 (BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR >> 8) & 0xff,
17919                 BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR & 0xff,
17920                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
17921                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
17922         },
17923         {
17924         .description = "ext_flow_ctr",
17925         .field_bit_size = 1,
17926         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
17927         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
17928                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
17929         },
17930         {
17931         .description = "act_rec_int",
17932         .field_bit_size = 1,
17933         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17934         },
17935         {
17936         .description = "act_rec_size",
17937         .field_bit_size = 5,
17938         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
17939         .result_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,
17940                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
17941         },
17942         {
17943         .description = "key_size",
17944         .field_bit_size = 9,
17945         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
17946         .result_operand = {
17947                 (0x00c5 >> 8) & 0xff,
17948                 0x00c5 & 0xff,
17949                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
17950                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
17951         },
17952         {
17953         .description = "reserved",
17954         .field_bit_size = 11,
17955         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17956         },
17957         {
17958         .description = "strength",
17959         .field_bit_size = 2,
17960         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
17961         .result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,
17962                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
17963         },
17964         {
17965         .description = "l1_cacheable",
17966         .field_bit_size = 1,
17967         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17968         },
17969         {
17970         .description = "valid",
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         /* class_tid: 7, wh_plus, table: l2_cntxt_tcam_0 */
17977         {
17978         .description = "l2_cntxt_id",
17979         .field_bit_size = 10,
17980         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
17981         .result_operand = {
17982                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
17983                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
17984                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
17985                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
17986         },
17987         {
17988         .description = "prof_func_id",
17989         .field_bit_size = 7,
17990         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
17991         .result_operand = {
17992                 (BNXT_ULP_GLB_REGFILE_INDEX_L2_PROF_FUNC_ID >> 8) & 0xff,
17993                 BNXT_ULP_GLB_REGFILE_INDEX_L2_PROF_FUNC_ID & 0xff,
17994                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
17995                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
17996         },
17997         {
17998         .description = "l2_byp_lkup_en",
17999         .field_bit_size = 1,
18000         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18001         },
18002         {
18003         .description = "parif",
18004         .field_bit_size = 4,
18005         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,
18006         .result_operand = {
18007                 (BNXT_ULP_CF_IDX_PHY_PORT_PARIF >> 8) & 0xff,
18008                 BNXT_ULP_CF_IDX_PHY_PORT_PARIF & 0xff,
18009                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
18010                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18011         },
18012         {
18013         .description = "allowed_pri",
18014         .field_bit_size = 8,
18015         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18016         },
18017         {
18018         .description = "default_pri",
18019         .field_bit_size = 3,
18020         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18021         },
18022         {
18023         .description = "allowed_tpid",
18024         .field_bit_size = 6,
18025         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18026         },
18027         {
18028         .description = "default_tpid",
18029         .field_bit_size = 3,
18030         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18031         },
18032         {
18033         .description = "bd_act_en",
18034         .field_bit_size = 1,
18035         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18036         },
18037         {
18038         .description = "sp_rec_ptr",
18039         .field_bit_size = 16,
18040         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18041         },
18042         {
18043         .description = "byp_sp_lkup",
18044         .field_bit_size = 1,
18045         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
18046         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
18047                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18048         },
18049         {
18050         .description = "pri_anti_spoof_ctl",
18051         .field_bit_size = 2,
18052         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18053         },
18054         {
18055         .description = "tpid_anti_spoof_ctl",
18056         .field_bit_size = 2,
18057         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18058         },
18059         /* class_tid: 7, wh_plus, table: profile_tcam_cache_0 */
18060         {
18061         .description = "em_profile_id",
18062         .field_bit_size = 10,
18063         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
18064         .result_operand = {
18065                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
18066                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
18067                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
18068                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18069         },
18070         /* class_tid: 7, wh_plus, table: profile_tcam_0 */
18071         {
18072         .description = "wc_key_id",
18073         .field_bit_size = 4,
18074         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18075         },
18076         {
18077         .description = "wc_profile_id",
18078         .field_bit_size = 8,
18079         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18080         },
18081         {
18082         .description = "wc_search_en",
18083         .field_bit_size = 1,
18084         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18085         },
18086         {
18087         .description = "em_key_mask",
18088         .field_bit_size = 10,
18089         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
18090         .result_operand = {
18091                 (0x0005 >> 8) & 0xff,
18092                 0x0005 & 0xff,
18093                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
18094                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18095         },
18096         {
18097         .description = "em_key_id",
18098         .field_bit_size = 5,
18099         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
18100         .result_operand = {0x15, 0x00, 0x00, 0x00, 0x00, 0x00,
18101                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18102         },
18103         {
18104         .description = "em_profile_id",
18105         .field_bit_size = 8,
18106         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
18107         .result_operand = {
18108                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
18109                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
18110                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
18111                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18112         },
18113         {
18114         .description = "em_search_en",
18115         .field_bit_size = 1,
18116         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
18117         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
18118                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18119         },
18120         {
18121         .description = "pl_byp_lkup_en",
18122         .field_bit_size = 1,
18123         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18124         },
18125         /* class_tid: 7, wh_plus, table: ext_em_0 */
18126         {
18127         .description = "act_rec_ptr",
18128         .field_bit_size = 33,
18129         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
18130         .result_operand = {
18131                 (BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR >> 8) & 0xff,
18132                 BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR & 0xff,
18133                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
18134                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18135         },
18136         {
18137         .description = "ext_flow_ctr",
18138         .field_bit_size = 1,
18139         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
18140         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
18141                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18142         },
18143         {
18144         .description = "act_rec_int",
18145         .field_bit_size = 1,
18146         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18147         },
18148         {
18149         .description = "act_rec_size",
18150         .field_bit_size = 5,
18151         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
18152         .result_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,
18153                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18154         },
18155         {
18156         .description = "key_size",
18157         .field_bit_size = 9,
18158         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
18159         .result_operand = {
18160                 (0x00c5 >> 8) & 0xff,
18161                 0x00c5 & 0xff,
18162                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
18163                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18164         },
18165         {
18166         .description = "reserved",
18167         .field_bit_size = 11,
18168         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18169         },
18170         {
18171         .description = "strength",
18172         .field_bit_size = 2,
18173         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
18174         .result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,
18175                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18176         },
18177         {
18178         .description = "l1_cacheable",
18179         .field_bit_size = 1,
18180         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18181         },
18182         {
18183         .description = "valid",
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         /* class_tid: 7, wh_plus, table: int_em_0 */
18190         {
18191         .description = "act_rec_ptr",
18192         .field_bit_size = 33,
18193         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
18194         .result_operand = {
18195                 (BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR >> 8) & 0xff,
18196                 BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR & 0xff,
18197                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
18198                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18199         },
18200         {
18201         .description = "ext_flow_ctr",
18202         .field_bit_size = 1,
18203         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
18204         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
18205                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18206         },
18207         {
18208         .description = "act_rec_int",
18209         .field_bit_size = 1,
18210         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18211         },
18212         {
18213         .description = "act_rec_size",
18214         .field_bit_size = 5,
18215         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
18216         .result_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,
18217                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18218         },
18219         {
18220         .description = "key_size",
18221         .field_bit_size = 9,
18222         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
18223         .result_operand = {
18224                 (0x00c5 >> 8) & 0xff,
18225                 0x00c5 & 0xff,
18226                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
18227                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18228         },
18229         {
18230         .description = "reserved",
18231         .field_bit_size = 11,
18232         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18233         },
18234         {
18235         .description = "strength",
18236         .field_bit_size = 2,
18237         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
18238         .result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,
18239                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18240         },
18241         {
18242         .description = "l1_cacheable",
18243         .field_bit_size = 1,
18244         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18245         },
18246         {
18247         .description = "valid",
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         /* class_tid: 8, wh_plus, table: l2_cntxt_cache_0 */
18254         {
18255         .description = "l2_cntxt_id",
18256         .field_bit_size = 10,
18257         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
18258         .result_operand = {
18259                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
18260                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
18261                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
18262                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18263         },
18264         /* class_tid: 8, wh_plus, table: l2_cntxt_tcam_0 */
18265         {
18266         .description = "l2_cntxt_id",
18267         .field_bit_size = 10,
18268         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
18269         .result_operand = {
18270                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
18271                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
18272                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
18273                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18274         },
18275         {
18276         .description = "prof_func_id",
18277         .field_bit_size = 7,
18278         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
18279         .result_operand = {
18280                 (BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID >> 8) & 0xff,
18281                 BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID & 0xff,
18282                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
18283                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18284         },
18285         {
18286         .description = "l2_byp_lkup_en",
18287         .field_bit_size = 1,
18288         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18289         },
18290         {
18291         .description = "parif",
18292         .field_bit_size = 4,
18293         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,
18294         .result_operand = {
18295                 (BNXT_ULP_CF_IDX_PHY_PORT_PARIF >> 8) & 0xff,
18296                 BNXT_ULP_CF_IDX_PHY_PORT_PARIF & 0xff,
18297                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
18298                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18299         },
18300         {
18301         .description = "allowed_pri",
18302         .field_bit_size = 8,
18303         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18304         },
18305         {
18306         .description = "default_pri",
18307         .field_bit_size = 3,
18308         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18309         },
18310         {
18311         .description = "allowed_tpid",
18312         .field_bit_size = 6,
18313         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18314         },
18315         {
18316         .description = "default_tpid",
18317         .field_bit_size = 3,
18318         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18319         },
18320         {
18321         .description = "bd_act_en",
18322         .field_bit_size = 1,
18323         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18324         },
18325         {
18326         .description = "sp_rec_ptr",
18327         .field_bit_size = 16,
18328         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18329         },
18330         {
18331         .description = "byp_sp_lkup",
18332         .field_bit_size = 1,
18333         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
18334         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
18335                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18336         },
18337         {
18338         .description = "pri_anti_spoof_ctl",
18339         .field_bit_size = 2,
18340         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18341         },
18342         {
18343         .description = "tpid_anti_spoof_ctl",
18344         .field_bit_size = 2,
18345         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18346         },
18347         /* class_tid: 8, wh_plus, table: profile_tcam_cache_0 */
18348         {
18349         .description = "em_profile_id",
18350         .field_bit_size = 10,
18351         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
18352         .result_operand = {
18353                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
18354                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
18355                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
18356                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18357         },
18358         /* class_tid: 8, wh_plus, table: profile_tcam_0 */
18359         {
18360         .description = "wc_key_id",
18361         .field_bit_size = 4,
18362         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18363         },
18364         {
18365         .description = "wc_profile_id",
18366         .field_bit_size = 8,
18367         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18368         },
18369         {
18370         .description = "wc_search_en",
18371         .field_bit_size = 1,
18372         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18373         },
18374         {
18375         .description = "em_key_mask",
18376         .field_bit_size = 10,
18377         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
18378         .result_operand = {
18379                 (0x00f9 >> 8) & 0xff,
18380                 0x00f9 & 0xff,
18381                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
18382                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18383         },
18384         {
18385         .description = "em_key_id",
18386         .field_bit_size = 5,
18387         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
18388         .result_operand = {0x15, 0x00, 0x00, 0x00, 0x00, 0x00,
18389                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18390         },
18391         {
18392         .description = "em_profile_id",
18393         .field_bit_size = 8,
18394         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
18395         .result_operand = {
18396                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
18397                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
18398                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
18399                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18400         },
18401         {
18402         .description = "em_search_en",
18403         .field_bit_size = 1,
18404         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
18405         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
18406                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18407         },
18408         {
18409         .description = "pl_byp_lkup_en",
18410         .field_bit_size = 1,
18411         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18412         },
18413         /* class_tid: 8, wh_plus, table: ext_em_0 */
18414         {
18415         .description = "act_rec_ptr",
18416         .field_bit_size = 33,
18417         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
18418         .result_operand = {
18419                 (BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR >> 8) & 0xff,
18420                 BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR & 0xff,
18421                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
18422                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18423         },
18424         {
18425         .description = "ext_flow_ctr",
18426         .field_bit_size = 1,
18427         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
18428         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
18429                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18430         },
18431         {
18432         .description = "act_rec_int",
18433         .field_bit_size = 1,
18434         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18435         },
18436         {
18437         .description = "act_rec_size",
18438         .field_bit_size = 5,
18439         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
18440         .result_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,
18441                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18442         },
18443         {
18444         .description = "key_size",
18445         .field_bit_size = 9,
18446         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
18447         .result_operand = {
18448                 (0x00c5 >> 8) & 0xff,
18449                 0x00c5 & 0xff,
18450                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
18451                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18452         },
18453         {
18454         .description = "reserved",
18455         .field_bit_size = 11,
18456         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18457         },
18458         {
18459         .description = "strength",
18460         .field_bit_size = 2,
18461         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
18462         .result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,
18463                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18464         },
18465         {
18466         .description = "l1_cacheable",
18467         .field_bit_size = 1,
18468         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18469         },
18470         {
18471         .description = "valid",
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         /* class_tid: 8, wh_plus, table: int_em_0 */
18478         {
18479         .description = "act_rec_ptr",
18480         .field_bit_size = 33,
18481         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
18482         .result_operand = {
18483                 (BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR >> 8) & 0xff,
18484                 BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR & 0xff,
18485                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
18486                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18487         },
18488         {
18489         .description = "ext_flow_ctr",
18490         .field_bit_size = 1,
18491         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
18492         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
18493                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18494         },
18495         {
18496         .description = "act_rec_int",
18497         .field_bit_size = 1,
18498         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18499         },
18500         {
18501         .description = "act_rec_size",
18502         .field_bit_size = 5,
18503         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
18504         .result_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,
18505                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18506         },
18507         {
18508         .description = "key_size",
18509         .field_bit_size = 9,
18510         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
18511         .result_operand = {
18512                 (0x00c5 >> 8) & 0xff,
18513                 0x00c5 & 0xff,
18514                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
18515                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18516         },
18517         {
18518         .description = "reserved",
18519         .field_bit_size = 11,
18520         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18521         },
18522         {
18523         .description = "strength",
18524         .field_bit_size = 2,
18525         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
18526         .result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,
18527                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18528         },
18529         {
18530         .description = "l1_cacheable",
18531         .field_bit_size = 1,
18532         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18533         },
18534         {
18535         .description = "valid",
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         /* class_tid: 9, wh_plus, table: l2_cntxt_cache_0 */
18542         {
18543         .description = "l2_cntxt_id",
18544         .field_bit_size = 10,
18545         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
18546         .result_operand = {
18547                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
18548                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
18549                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
18550                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18551         },
18552         /* class_tid: 9, wh_plus, table: l2_cntxt_tcam_0 */
18553         {
18554         .description = "l2_cntxt_id",
18555         .field_bit_size = 10,
18556         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
18557         .result_operand = {
18558                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
18559                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
18560                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
18561                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18562         },
18563         {
18564         .description = "prof_func_id",
18565         .field_bit_size = 7,
18566         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
18567         .result_operand = {
18568                 (BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID >> 8) & 0xff,
18569                 BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID & 0xff,
18570                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
18571                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18572         },
18573         {
18574         .description = "l2_byp_lkup_en",
18575         .field_bit_size = 1,
18576         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18577         },
18578         {
18579         .description = "parif",
18580         .field_bit_size = 4,
18581         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,
18582         .result_operand = {
18583                 (BNXT_ULP_CF_IDX_PHY_PORT_PARIF >> 8) & 0xff,
18584                 BNXT_ULP_CF_IDX_PHY_PORT_PARIF & 0xff,
18585                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
18586                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18587         },
18588         {
18589         .description = "allowed_pri",
18590         .field_bit_size = 8,
18591         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18592         },
18593         {
18594         .description = "default_pri",
18595         .field_bit_size = 3,
18596         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18597         },
18598         {
18599         .description = "allowed_tpid",
18600         .field_bit_size = 6,
18601         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18602         },
18603         {
18604         .description = "default_tpid",
18605         .field_bit_size = 3,
18606         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18607         },
18608         {
18609         .description = "bd_act_en",
18610         .field_bit_size = 1,
18611         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18612         },
18613         {
18614         .description = "sp_rec_ptr",
18615         .field_bit_size = 16,
18616         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18617         },
18618         {
18619         .description = "byp_sp_lkup",
18620         .field_bit_size = 1,
18621         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
18622         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
18623                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18624         },
18625         {
18626         .description = "pri_anti_spoof_ctl",
18627         .field_bit_size = 2,
18628         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18629         },
18630         {
18631         .description = "tpid_anti_spoof_ctl",
18632         .field_bit_size = 2,
18633         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18634         },
18635         /* class_tid: 9, wh_plus, table: profile_tcam_cache_0 */
18636         {
18637         .description = "em_profile_id",
18638         .field_bit_size = 10,
18639         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
18640         .result_operand = {
18641                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
18642                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
18643                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
18644                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18645         },
18646         /* class_tid: 9, wh_plus, table: profile_tcam_0 */
18647         {
18648         .description = "wc_key_id",
18649         .field_bit_size = 4,
18650         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18651         },
18652         {
18653         .description = "wc_profile_id",
18654         .field_bit_size = 8,
18655         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18656         },
18657         {
18658         .description = "wc_search_en",
18659         .field_bit_size = 1,
18660         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18661         },
18662         {
18663         .description = "em_key_mask",
18664         .field_bit_size = 10,
18665         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
18666         .result_operand = {
18667                 (0x00f9 >> 8) & 0xff,
18668                 0x00f9 & 0xff,
18669                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
18670                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18671         },
18672         {
18673         .description = "em_key_id",
18674         .field_bit_size = 5,
18675         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
18676         .result_operand = {0x15, 0x00, 0x00, 0x00, 0x00, 0x00,
18677                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18678         },
18679         {
18680         .description = "em_profile_id",
18681         .field_bit_size = 8,
18682         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
18683         .result_operand = {
18684                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
18685                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
18686                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
18687                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18688         },
18689         {
18690         .description = "em_search_en",
18691         .field_bit_size = 1,
18692         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
18693         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
18694                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18695         },
18696         {
18697         .description = "pl_byp_lkup_en",
18698         .field_bit_size = 1,
18699         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18700         },
18701         /* class_tid: 9, wh_plus, table: ext_em_0 */
18702         {
18703         .description = "act_rec_ptr",
18704         .field_bit_size = 33,
18705         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
18706         .result_operand = {
18707                 (BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR >> 8) & 0xff,
18708                 BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR & 0xff,
18709                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
18710                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18711         },
18712         {
18713         .description = "ext_flow_ctr",
18714         .field_bit_size = 1,
18715         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
18716         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
18717                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18718         },
18719         {
18720         .description = "act_rec_int",
18721         .field_bit_size = 1,
18722         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18723         },
18724         {
18725         .description = "act_rec_size",
18726         .field_bit_size = 5,
18727         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
18728         .result_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,
18729                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18730         },
18731         {
18732         .description = "key_size",
18733         .field_bit_size = 9,
18734         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
18735         .result_operand = {
18736                 (0x00c5 >> 8) & 0xff,
18737                 0x00c5 & 0xff,
18738                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
18739                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18740         },
18741         {
18742         .description = "reserved",
18743         .field_bit_size = 11,
18744         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18745         },
18746         {
18747         .description = "strength",
18748         .field_bit_size = 2,
18749         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
18750         .result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,
18751                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18752         },
18753         {
18754         .description = "l1_cacheable",
18755         .field_bit_size = 1,
18756         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18757         },
18758         {
18759         .description = "valid",
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         /* class_tid: 9, wh_plus, table: int_em_0 */
18766         {
18767         .description = "act_rec_ptr",
18768         .field_bit_size = 33,
18769         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
18770         .result_operand = {
18771                 (BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR >> 8) & 0xff,
18772                 BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR & 0xff,
18773                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
18774                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18775         },
18776         {
18777         .description = "ext_flow_ctr",
18778         .field_bit_size = 1,
18779         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
18780         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
18781                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18782         },
18783         {
18784         .description = "act_rec_int",
18785         .field_bit_size = 1,
18786         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18787         },
18788         {
18789         .description = "act_rec_size",
18790         .field_bit_size = 5,
18791         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
18792         .result_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,
18793                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18794         },
18795         {
18796         .description = "key_size",
18797         .field_bit_size = 9,
18798         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
18799         .result_operand = {
18800                 (0x00c5 >> 8) & 0xff,
18801                 0x00c5 & 0xff,
18802                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
18803                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18804         },
18805         {
18806         .description = "reserved",
18807         .field_bit_size = 11,
18808         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18809         },
18810         {
18811         .description = "strength",
18812         .field_bit_size = 2,
18813         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
18814         .result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,
18815                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18816         },
18817         {
18818         .description = "l1_cacheable",
18819         .field_bit_size = 1,
18820         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18821         },
18822         {
18823         .description = "valid",
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         /* class_tid: 10, wh_plus, table: l2_cntxt_cache_0 */
18830         {
18831         .description = "l2_cntxt_id",
18832         .field_bit_size = 10,
18833         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
18834         .result_operand = {
18835                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
18836                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
18837                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
18838                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18839         },
18840         /* class_tid: 10, wh_plus, table: l2_cntxt_tcam_0 */
18841         {
18842         .description = "l2_cntxt_id",
18843         .field_bit_size = 10,
18844         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
18845         .result_operand = {
18846                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
18847                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
18848                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
18849                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18850         },
18851         {
18852         .description = "prof_func_id",
18853         .field_bit_size = 7,
18854         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
18855         .result_operand = {
18856                 (BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID >> 8) & 0xff,
18857                 BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID & 0xff,
18858                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
18859                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18860         },
18861         {
18862         .description = "l2_byp_lkup_en",
18863         .field_bit_size = 1,
18864         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18865         },
18866         {
18867         .description = "parif",
18868         .field_bit_size = 4,
18869         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,
18870         .result_operand = {
18871                 (BNXT_ULP_CF_IDX_PHY_PORT_PARIF >> 8) & 0xff,
18872                 BNXT_ULP_CF_IDX_PHY_PORT_PARIF & 0xff,
18873                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
18874                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18875         },
18876         {
18877         .description = "allowed_pri",
18878         .field_bit_size = 8,
18879         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18880         },
18881         {
18882         .description = "default_pri",
18883         .field_bit_size = 3,
18884         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18885         },
18886         {
18887         .description = "allowed_tpid",
18888         .field_bit_size = 6,
18889         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18890         },
18891         {
18892         .description = "default_tpid",
18893         .field_bit_size = 3,
18894         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18895         },
18896         {
18897         .description = "bd_act_en",
18898         .field_bit_size = 1,
18899         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18900         },
18901         {
18902         .description = "sp_rec_ptr",
18903         .field_bit_size = 16,
18904         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18905         },
18906         {
18907         .description = "byp_sp_lkup",
18908         .field_bit_size = 1,
18909         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
18910         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
18911                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18912         },
18913         {
18914         .description = "pri_anti_spoof_ctl",
18915         .field_bit_size = 2,
18916         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18917         },
18918         {
18919         .description = "tpid_anti_spoof_ctl",
18920         .field_bit_size = 2,
18921         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18922         },
18923         /* class_tid: 10, wh_plus, table: profile_tcam_cache_0 */
18924         {
18925         .description = "em_profile_id",
18926         .field_bit_size = 10,
18927         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
18928         .result_operand = {
18929                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
18930                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
18931                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
18932                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18933         },
18934         /* class_tid: 10, wh_plus, table: profile_tcam_0 */
18935         {
18936         .description = "wc_key_id",
18937         .field_bit_size = 4,
18938         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18939         },
18940         {
18941         .description = "wc_profile_id",
18942         .field_bit_size = 8,
18943         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18944         },
18945         {
18946         .description = "wc_search_en",
18947         .field_bit_size = 1,
18948         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18949         },
18950         {
18951         .description = "em_key_mask",
18952         .field_bit_size = 10,
18953         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
18954         .result_operand = {
18955                 (0x00f9 >> 8) & 0xff,
18956                 0x00f9 & 0xff,
18957                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
18958                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18959         },
18960         {
18961         .description = "em_key_id",
18962         .field_bit_size = 5,
18963         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
18964         .result_operand = {0x19, 0x00, 0x00, 0x00, 0x00, 0x00,
18965                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18966         },
18967         {
18968         .description = "em_profile_id",
18969         .field_bit_size = 8,
18970         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
18971         .result_operand = {
18972                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
18973                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
18974                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
18975                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18976         },
18977         {
18978         .description = "em_search_en",
18979         .field_bit_size = 1,
18980         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
18981         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
18982                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18983         },
18984         {
18985         .description = "pl_byp_lkup_en",
18986         .field_bit_size = 1,
18987         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18988         },
18989         /* class_tid: 10, wh_plus, table: ext_em_0 */
18990         {
18991         .description = "act_rec_ptr",
18992         .field_bit_size = 33,
18993         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
18994         .result_operand = {
18995                 (BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR >> 8) & 0xff,
18996                 BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR & 0xff,
18997                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
18998                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18999         },
19000         {
19001         .description = "ext_flow_ctr",
19002         .field_bit_size = 1,
19003         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
19004         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
19005                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19006         },
19007         {
19008         .description = "act_rec_int",
19009         .field_bit_size = 1,
19010         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19011         },
19012         {
19013         .description = "act_rec_size",
19014         .field_bit_size = 5,
19015         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
19016         .result_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,
19017                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19018         },
19019         {
19020         .description = "key_size",
19021         .field_bit_size = 9,
19022         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
19023         .result_operand = {
19024                 (0x0185 >> 8) & 0xff,
19025                 0x0185 & 0xff,
19026                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
19027                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19028         },
19029         {
19030         .description = "reserved",
19031         .field_bit_size = 11,
19032         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19033         },
19034         {
19035         .description = "strength",
19036         .field_bit_size = 2,
19037         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
19038         .result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,
19039                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19040         },
19041         {
19042         .description = "l1_cacheable",
19043         .field_bit_size = 1,
19044         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19045         },
19046         {
19047         .description = "valid",
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         /* class_tid: 10, wh_plus, table: int_em_0 */
19054         {
19055         .description = "act_rec_ptr",
19056         .field_bit_size = 33,
19057         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
19058         .result_operand = {
19059                 (BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR >> 8) & 0xff,
19060                 BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR & 0xff,
19061                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
19062                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19063         },
19064         {
19065         .description = "ext_flow_ctr",
19066         .field_bit_size = 1,
19067         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
19068         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
19069                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19070         },
19071         {
19072         .description = "act_rec_int",
19073         .field_bit_size = 1,
19074         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19075         },
19076         {
19077         .description = "act_rec_size",
19078         .field_bit_size = 5,
19079         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
19080         .result_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,
19081                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19082         },
19083         {
19084         .description = "key_size",
19085         .field_bit_size = 9,
19086         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
19087         .result_operand = {
19088                 (0x0185 >> 8) & 0xff,
19089                 0x0185 & 0xff,
19090                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
19091                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19092         },
19093         {
19094         .description = "reserved",
19095         .field_bit_size = 11,
19096         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19097         },
19098         {
19099         .description = "strength",
19100         .field_bit_size = 2,
19101         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
19102         .result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,
19103                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19104         },
19105         {
19106         .description = "l1_cacheable",
19107         .field_bit_size = 1,
19108         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19109         },
19110         {
19111         .description = "valid",
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         /* class_tid: 11, wh_plus, table: l2_cntxt_cache_0 */
19118         {
19119         .description = "l2_cntxt_id",
19120         .field_bit_size = 10,
19121         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
19122         .result_operand = {
19123                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
19124                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
19125                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
19126                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19127         },
19128         /* class_tid: 11, wh_plus, table: l2_cntxt_tcam_0 */
19129         {
19130         .description = "l2_cntxt_id",
19131         .field_bit_size = 10,
19132         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
19133         .result_operand = {
19134                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
19135                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
19136                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
19137                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19138         },
19139         {
19140         .description = "prof_func_id",
19141         .field_bit_size = 7,
19142         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
19143         .result_operand = {
19144                 (BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID >> 8) & 0xff,
19145                 BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID & 0xff,
19146                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
19147                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19148         },
19149         {
19150         .description = "l2_byp_lkup_en",
19151         .field_bit_size = 1,
19152         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19153         },
19154         {
19155         .description = "parif",
19156         .field_bit_size = 4,
19157         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,
19158         .result_operand = {
19159                 (BNXT_ULP_CF_IDX_PHY_PORT_PARIF >> 8) & 0xff,
19160                 BNXT_ULP_CF_IDX_PHY_PORT_PARIF & 0xff,
19161                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
19162                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19163         },
19164         {
19165         .description = "allowed_pri",
19166         .field_bit_size = 8,
19167         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19168         },
19169         {
19170         .description = "default_pri",
19171         .field_bit_size = 3,
19172         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19173         },
19174         {
19175         .description = "allowed_tpid",
19176         .field_bit_size = 6,
19177         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19178         },
19179         {
19180         .description = "default_tpid",
19181         .field_bit_size = 3,
19182         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19183         },
19184         {
19185         .description = "bd_act_en",
19186         .field_bit_size = 1,
19187         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19188         },
19189         {
19190         .description = "sp_rec_ptr",
19191         .field_bit_size = 16,
19192         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19193         },
19194         {
19195         .description = "byp_sp_lkup",
19196         .field_bit_size = 1,
19197         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
19198         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
19199                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19200         },
19201         {
19202         .description = "pri_anti_spoof_ctl",
19203         .field_bit_size = 2,
19204         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19205         },
19206         {
19207         .description = "tpid_anti_spoof_ctl",
19208         .field_bit_size = 2,
19209         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19210         },
19211         /* class_tid: 11, wh_plus, table: profile_tcam_cache_0 */
19212         {
19213         .description = "em_profile_id",
19214         .field_bit_size = 10,
19215         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
19216         .result_operand = {
19217                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
19218                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
19219                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
19220                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19221         },
19222         /* class_tid: 11, wh_plus, table: profile_tcam_0 */
19223         {
19224         .description = "wc_key_id",
19225         .field_bit_size = 4,
19226         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19227         },
19228         {
19229         .description = "wc_profile_id",
19230         .field_bit_size = 8,
19231         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19232         },
19233         {
19234         .description = "wc_search_en",
19235         .field_bit_size = 1,
19236         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19237         },
19238         {
19239         .description = "em_key_mask",
19240         .field_bit_size = 10,
19241         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
19242         .result_operand = {
19243                 (0x00f9 >> 8) & 0xff,
19244                 0x00f9 & 0xff,
19245                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
19246                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19247         },
19248         {
19249         .description = "em_key_id",
19250         .field_bit_size = 5,
19251         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
19252         .result_operand = {0x19, 0x00, 0x00, 0x00, 0x00, 0x00,
19253                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19254         },
19255         {
19256         .description = "em_profile_id",
19257         .field_bit_size = 8,
19258         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
19259         .result_operand = {
19260                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
19261                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
19262                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
19263                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19264         },
19265         {
19266         .description = "em_search_en",
19267         .field_bit_size = 1,
19268         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
19269         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
19270                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19271         },
19272         {
19273         .description = "pl_byp_lkup_en",
19274         .field_bit_size = 1,
19275         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19276         },
19277         /* class_tid: 11, wh_plus, table: ext_em_0 */
19278         {
19279         .description = "act_rec_ptr",
19280         .field_bit_size = 33,
19281         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
19282         .result_operand = {
19283                 (BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR >> 8) & 0xff,
19284                 BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR & 0xff,
19285                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
19286                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19287         },
19288         {
19289         .description = "ext_flow_ctr",
19290         .field_bit_size = 1,
19291         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
19292         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
19293                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19294         },
19295         {
19296         .description = "act_rec_int",
19297         .field_bit_size = 1,
19298         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19299         },
19300         {
19301         .description = "act_rec_size",
19302         .field_bit_size = 5,
19303         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
19304         .result_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,
19305                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19306         },
19307         {
19308         .description = "key_size",
19309         .field_bit_size = 9,
19310         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
19311         .result_operand = {
19312                 (0x0185 >> 8) & 0xff,
19313                 0x0185 & 0xff,
19314                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
19315                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19316         },
19317         {
19318         .description = "reserved",
19319         .field_bit_size = 11,
19320         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19321         },
19322         {
19323         .description = "strength",
19324         .field_bit_size = 2,
19325         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
19326         .result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,
19327                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19328         },
19329         {
19330         .description = "l1_cacheable",
19331         .field_bit_size = 1,
19332         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19333         },
19334         {
19335         .description = "valid",
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         /* class_tid: 11, wh_plus, table: int_em_0 */
19342         {
19343         .description = "act_rec_ptr",
19344         .field_bit_size = 33,
19345         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
19346         .result_operand = {
19347                 (BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR >> 8) & 0xff,
19348                 BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR & 0xff,
19349                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
19350                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19351         },
19352         {
19353         .description = "ext_flow_ctr",
19354         .field_bit_size = 1,
19355         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
19356         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
19357                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19358         },
19359         {
19360         .description = "act_rec_int",
19361         .field_bit_size = 1,
19362         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19363         },
19364         {
19365         .description = "act_rec_size",
19366         .field_bit_size = 5,
19367         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
19368         .result_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,
19369                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19370         },
19371         {
19372         .description = "key_size",
19373         .field_bit_size = 9,
19374         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
19375         .result_operand = {
19376                 (0x0185 >> 8) & 0xff,
19377                 0x0185 & 0xff,
19378                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
19379                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19380         },
19381         {
19382         .description = "reserved",
19383         .field_bit_size = 11,
19384         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19385         },
19386         {
19387         .description = "strength",
19388         .field_bit_size = 2,
19389         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
19390         .result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,
19391                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19392         },
19393         {
19394         .description = "l1_cacheable",
19395         .field_bit_size = 1,
19396         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19397         },
19398         {
19399         .description = "valid",
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         /* class_tid: 12, wh_plus, table: l2_cntxt_tcam_0 */
19406         {
19407         .description = "l2_cntxt_id",
19408         .field_bit_size = 10,
19409         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
19410         .result_operand = {
19411                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
19412                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
19413                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
19414                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19415         },
19416         {
19417         .description = "prof_func_id",
19418         .field_bit_size = 7,
19419         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
19420         .result_operand = {
19421                 (BNXT_ULP_GLB_REGFILE_INDEX_L2_PROF_FUNC_ID >> 8) & 0xff,
19422                 BNXT_ULP_GLB_REGFILE_INDEX_L2_PROF_FUNC_ID & 0xff,
19423                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
19424                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19425         },
19426         {
19427         .description = "l2_byp_lkup_en",
19428         .field_bit_size = 1,
19429         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19430         },
19431         {
19432         .description = "parif",
19433         .field_bit_size = 4,
19434         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,
19435         .result_operand = {
19436                 (BNXT_ULP_CF_IDX_PHY_PORT_PARIF >> 8) & 0xff,
19437                 BNXT_ULP_CF_IDX_PHY_PORT_PARIF & 0xff,
19438                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
19439                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19440         },
19441         {
19442         .description = "allowed_pri",
19443         .field_bit_size = 8,
19444         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19445         },
19446         {
19447         .description = "default_pri",
19448         .field_bit_size = 3,
19449         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19450         },
19451         {
19452         .description = "allowed_tpid",
19453         .field_bit_size = 6,
19454         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19455         },
19456         {
19457         .description = "default_tpid",
19458         .field_bit_size = 3,
19459         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19460         },
19461         {
19462         .description = "bd_act_en",
19463         .field_bit_size = 1,
19464         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19465         },
19466         {
19467         .description = "sp_rec_ptr",
19468         .field_bit_size = 16,
19469         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19470         },
19471         {
19472         .description = "byp_sp_lkup",
19473         .field_bit_size = 1,
19474         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
19475         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
19476                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19477         },
19478         {
19479         .description = "pri_anti_spoof_ctl",
19480         .field_bit_size = 2,
19481         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19482         },
19483         {
19484         .description = "tpid_anti_spoof_ctl",
19485         .field_bit_size = 2,
19486         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19487         },
19488         /* class_tid: 12, wh_plus, table: profile_tcam_cache_0 */
19489         {
19490         .description = "em_profile_id",
19491         .field_bit_size = 10,
19492         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
19493         .result_operand = {
19494                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
19495                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
19496                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
19497                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19498         },
19499         /* class_tid: 12, wh_plus, table: profile_tcam_0 */
19500         {
19501         .description = "wc_key_id",
19502         .field_bit_size = 4,
19503         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19504         },
19505         {
19506         .description = "wc_profile_id",
19507         .field_bit_size = 8,
19508         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19509         },
19510         {
19511         .description = "wc_search_en",
19512         .field_bit_size = 1,
19513         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19514         },
19515         {
19516         .description = "em_key_mask",
19517         .field_bit_size = 10,
19518         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
19519         .result_operand = {
19520                 (0x00f9 >> 8) & 0xff,
19521                 0x00f9 & 0xff,
19522                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
19523                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19524         },
19525         {
19526         .description = "em_key_id",
19527         .field_bit_size = 5,
19528         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
19529         .result_operand = {0x15, 0x00, 0x00, 0x00, 0x00, 0x00,
19530                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19531         },
19532         {
19533         .description = "em_profile_id",
19534         .field_bit_size = 8,
19535         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
19536         .result_operand = {
19537                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
19538                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
19539                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
19540                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19541         },
19542         {
19543         .description = "em_search_en",
19544         .field_bit_size = 1,
19545         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
19546         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
19547                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19548         },
19549         {
19550         .description = "pl_byp_lkup_en",
19551         .field_bit_size = 1,
19552         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19553         },
19554         /* class_tid: 12, wh_plus, table: ext_em_0 */
19555         {
19556         .description = "act_rec_ptr",
19557         .field_bit_size = 33,
19558         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
19559         .result_operand = {
19560                 (BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR >> 8) & 0xff,
19561                 BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR & 0xff,
19562                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
19563                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19564         },
19565         {
19566         .description = "ext_flow_ctr",
19567         .field_bit_size = 1,
19568         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
19569         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
19570                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19571         },
19572         {
19573         .description = "act_rec_int",
19574         .field_bit_size = 1,
19575         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19576         },
19577         {
19578         .description = "act_rec_size",
19579         .field_bit_size = 5,
19580         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
19581         .result_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,
19582                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19583         },
19584         {
19585         .description = "key_size",
19586         .field_bit_size = 9,
19587         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
19588         .result_operand = {
19589                 (0x00c5 >> 8) & 0xff,
19590                 0x00c5 & 0xff,
19591                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
19592                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19593         },
19594         {
19595         .description = "reserved",
19596         .field_bit_size = 11,
19597         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19598         },
19599         {
19600         .description = "strength",
19601         .field_bit_size = 2,
19602         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
19603         .result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,
19604                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19605         },
19606         {
19607         .description = "l1_cacheable",
19608         .field_bit_size = 1,
19609         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19610         },
19611         {
19612         .description = "valid",
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         /* class_tid: 12, wh_plus, table: int_em_0 */
19619         {
19620         .description = "act_rec_ptr",
19621         .field_bit_size = 33,
19622         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
19623         .result_operand = {
19624                 (BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR >> 8) & 0xff,
19625                 BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR & 0xff,
19626                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
19627                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19628         },
19629         {
19630         .description = "ext_flow_ctr",
19631         .field_bit_size = 1,
19632         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
19633         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
19634                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19635         },
19636         {
19637         .description = "act_rec_int",
19638         .field_bit_size = 1,
19639         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19640         },
19641         {
19642         .description = "act_rec_size",
19643         .field_bit_size = 5,
19644         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
19645         .result_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,
19646                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19647         },
19648         {
19649         .description = "key_size",
19650         .field_bit_size = 9,
19651         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
19652         .result_operand = {
19653                 (0x00c5 >> 8) & 0xff,
19654                 0x00c5 & 0xff,
19655                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
19656                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19657         },
19658         {
19659         .description = "reserved",
19660         .field_bit_size = 11,
19661         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19662         },
19663         {
19664         .description = "strength",
19665         .field_bit_size = 2,
19666         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
19667         .result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,
19668                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19669         },
19670         {
19671         .description = "l1_cacheable",
19672         .field_bit_size = 1,
19673         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19674         },
19675         {
19676         .description = "valid",
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         /* class_tid: 13, wh_plus, table: l2_cntxt_tcam_0 */
19683         {
19684         .description = "l2_cntxt_id",
19685         .field_bit_size = 10,
19686         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
19687         .result_operand = {
19688                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
19689                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
19690                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
19691                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19692         },
19693         {
19694         .description = "prof_func_id",
19695         .field_bit_size = 7,
19696         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
19697         .result_operand = {
19698                 (BNXT_ULP_GLB_REGFILE_INDEX_L2_PROF_FUNC_ID >> 8) & 0xff,
19699                 BNXT_ULP_GLB_REGFILE_INDEX_L2_PROF_FUNC_ID & 0xff,
19700                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
19701                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19702         },
19703         {
19704         .description = "l2_byp_lkup_en",
19705         .field_bit_size = 1,
19706         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19707         },
19708         {
19709         .description = "parif",
19710         .field_bit_size = 4,
19711         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,
19712         .result_operand = {
19713                 (BNXT_ULP_CF_IDX_PHY_PORT_PARIF >> 8) & 0xff,
19714                 BNXT_ULP_CF_IDX_PHY_PORT_PARIF & 0xff,
19715                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
19716                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19717         },
19718         {
19719         .description = "allowed_pri",
19720         .field_bit_size = 8,
19721         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19722         },
19723         {
19724         .description = "default_pri",
19725         .field_bit_size = 3,
19726         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19727         },
19728         {
19729         .description = "allowed_tpid",
19730         .field_bit_size = 6,
19731         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19732         },
19733         {
19734         .description = "default_tpid",
19735         .field_bit_size = 3,
19736         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19737         },
19738         {
19739         .description = "bd_act_en",
19740         .field_bit_size = 1,
19741         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19742         },
19743         {
19744         .description = "sp_rec_ptr",
19745         .field_bit_size = 16,
19746         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19747         },
19748         {
19749         .description = "byp_sp_lkup",
19750         .field_bit_size = 1,
19751         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
19752         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
19753                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19754         },
19755         {
19756         .description = "pri_anti_spoof_ctl",
19757         .field_bit_size = 2,
19758         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19759         },
19760         {
19761         .description = "tpid_anti_spoof_ctl",
19762         .field_bit_size = 2,
19763         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19764         },
19765         /* class_tid: 13, wh_plus, table: profile_tcam_cache_0 */
19766         {
19767         .description = "em_profile_id",
19768         .field_bit_size = 10,
19769         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
19770         .result_operand = {
19771                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
19772                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
19773                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
19774                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19775         },
19776         /* class_tid: 13, wh_plus, table: profile_tcam_0 */
19777         {
19778         .description = "wc_key_id",
19779         .field_bit_size = 4,
19780         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19781         },
19782         {
19783         .description = "wc_profile_id",
19784         .field_bit_size = 8,
19785         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19786         },
19787         {
19788         .description = "wc_search_en",
19789         .field_bit_size = 1,
19790         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19791         },
19792         {
19793         .description = "em_key_mask",
19794         .field_bit_size = 10,
19795         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
19796         .result_operand = {
19797                 (0x00f9 >> 8) & 0xff,
19798                 0x00f9 & 0xff,
19799                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
19800                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19801         },
19802         {
19803         .description = "em_key_id",
19804         .field_bit_size = 5,
19805         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
19806         .result_operand = {0x15, 0x00, 0x00, 0x00, 0x00, 0x00,
19807                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19808         },
19809         {
19810         .description = "em_profile_id",
19811         .field_bit_size = 8,
19812         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
19813         .result_operand = {
19814                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
19815                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
19816                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
19817                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19818         },
19819         {
19820         .description = "em_search_en",
19821         .field_bit_size = 1,
19822         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
19823         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
19824                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19825         },
19826         {
19827         .description = "pl_byp_lkup_en",
19828         .field_bit_size = 1,
19829         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19830         },
19831         /* class_tid: 13, wh_plus, table: ext_em_0 */
19832         {
19833         .description = "act_rec_ptr",
19834         .field_bit_size = 33,
19835         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
19836         .result_operand = {
19837                 (BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR >> 8) & 0xff,
19838                 BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR & 0xff,
19839                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
19840                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19841         },
19842         {
19843         .description = "ext_flow_ctr",
19844         .field_bit_size = 1,
19845         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
19846         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
19847                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19848         },
19849         {
19850         .description = "act_rec_int",
19851         .field_bit_size = 1,
19852         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19853         },
19854         {
19855         .description = "act_rec_size",
19856         .field_bit_size = 5,
19857         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
19858         .result_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,
19859                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19860         },
19861         {
19862         .description = "key_size",
19863         .field_bit_size = 9,
19864         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
19865         .result_operand = {
19866                 (0x00c5 >> 8) & 0xff,
19867                 0x00c5 & 0xff,
19868                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
19869                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19870         },
19871         {
19872         .description = "reserved",
19873         .field_bit_size = 11,
19874         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19875         },
19876         {
19877         .description = "strength",
19878         .field_bit_size = 2,
19879         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
19880         .result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,
19881                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19882         },
19883         {
19884         .description = "l1_cacheable",
19885         .field_bit_size = 1,
19886         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19887         },
19888         {
19889         .description = "valid",
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         /* class_tid: 13, wh_plus, table: int_em_0 */
19896         {
19897         .description = "act_rec_ptr",
19898         .field_bit_size = 33,
19899         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
19900         .result_operand = {
19901                 (BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR >> 8) & 0xff,
19902                 BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR & 0xff,
19903                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
19904                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19905         },
19906         {
19907         .description = "ext_flow_ctr",
19908         .field_bit_size = 1,
19909         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
19910         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
19911                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19912         },
19913         {
19914         .description = "act_rec_int",
19915         .field_bit_size = 1,
19916         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19917         },
19918         {
19919         .description = "act_rec_size",
19920         .field_bit_size = 5,
19921         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
19922         .result_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,
19923                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19924         },
19925         {
19926         .description = "key_size",
19927         .field_bit_size = 9,
19928         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
19929         .result_operand = {
19930                 (0x00c5 >> 8) & 0xff,
19931                 0x00c5 & 0xff,
19932                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
19933                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19934         },
19935         {
19936         .description = "reserved",
19937         .field_bit_size = 11,
19938         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19939         },
19940         {
19941         .description = "strength",
19942         .field_bit_size = 2,
19943         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
19944         .result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,
19945                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19946         },
19947         {
19948         .description = "l1_cacheable",
19949         .field_bit_size = 1,
19950         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19951         },
19952         {
19953         .description = "valid",
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         /* class_tid: 14, wh_plus, table: l2_cntxt_tcam_0 */
19960         {
19961         .description = "l2_cntxt_id",
19962         .field_bit_size = 10,
19963         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
19964         .result_operand = {
19965                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
19966                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
19967                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
19968                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19969         },
19970         {
19971         .description = "prof_func_id",
19972         .field_bit_size = 7,
19973         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
19974         .result_operand = {
19975                 (BNXT_ULP_GLB_REGFILE_INDEX_L2_PROF_FUNC_ID >> 8) & 0xff,
19976                 BNXT_ULP_GLB_REGFILE_INDEX_L2_PROF_FUNC_ID & 0xff,
19977                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
19978                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19979         },
19980         {
19981         .description = "l2_byp_lkup_en",
19982         .field_bit_size = 1,
19983         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19984         },
19985         {
19986         .description = "parif",
19987         .field_bit_size = 4,
19988         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,
19989         .result_operand = {
19990                 (BNXT_ULP_CF_IDX_PHY_PORT_PARIF >> 8) & 0xff,
19991                 BNXT_ULP_CF_IDX_PHY_PORT_PARIF & 0xff,
19992                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
19993                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19994         },
19995         {
19996         .description = "allowed_pri",
19997         .field_bit_size = 8,
19998         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19999         },
20000         {
20001         .description = "default_pri",
20002         .field_bit_size = 3,
20003         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20004         },
20005         {
20006         .description = "allowed_tpid",
20007         .field_bit_size = 6,
20008         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20009         },
20010         {
20011         .description = "default_tpid",
20012         .field_bit_size = 3,
20013         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20014         },
20015         {
20016         .description = "bd_act_en",
20017         .field_bit_size = 1,
20018         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20019         },
20020         {
20021         .description = "sp_rec_ptr",
20022         .field_bit_size = 16,
20023         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20024         },
20025         {
20026         .description = "byp_sp_lkup",
20027         .field_bit_size = 1,
20028         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
20029         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
20030                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20031         },
20032         {
20033         .description = "pri_anti_spoof_ctl",
20034         .field_bit_size = 2,
20035         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20036         },
20037         {
20038         .description = "tpid_anti_spoof_ctl",
20039         .field_bit_size = 2,
20040         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20041         },
20042         /* class_tid: 14, wh_plus, table: profile_tcam_cache_0 */
20043         {
20044         .description = "em_profile_id",
20045         .field_bit_size = 10,
20046         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
20047         .result_operand = {
20048                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
20049                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
20050                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
20051                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20052         },
20053         /* class_tid: 14, wh_plus, table: profile_tcam_0 */
20054         {
20055         .description = "wc_key_id",
20056         .field_bit_size = 4,
20057         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20058         },
20059         {
20060         .description = "wc_profile_id",
20061         .field_bit_size = 8,
20062         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20063         },
20064         {
20065         .description = "wc_search_en",
20066         .field_bit_size = 1,
20067         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20068         },
20069         {
20070         .description = "em_key_mask",
20071         .field_bit_size = 10,
20072         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
20073         .result_operand = {
20074                 (0x00f9 >> 8) & 0xff,
20075                 0x00f9 & 0xff,
20076                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
20077                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20078         },
20079         {
20080         .description = "em_key_id",
20081         .field_bit_size = 5,
20082         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
20083         .result_operand = {0x19, 0x00, 0x00, 0x00, 0x00, 0x00,
20084                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20085         },
20086         {
20087         .description = "em_profile_id",
20088         .field_bit_size = 8,
20089         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
20090         .result_operand = {
20091                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
20092                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
20093                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
20094                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20095         },
20096         {
20097         .description = "em_search_en",
20098         .field_bit_size = 1,
20099         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
20100         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
20101                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20102         },
20103         {
20104         .description = "pl_byp_lkup_en",
20105         .field_bit_size = 1,
20106         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20107         },
20108         /* class_tid: 14, wh_plus, table: ext_em_0 */
20109         {
20110         .description = "act_rec_ptr",
20111         .field_bit_size = 33,
20112         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
20113         .result_operand = {
20114                 (BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR >> 8) & 0xff,
20115                 BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR & 0xff,
20116                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
20117                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20118         },
20119         {
20120         .description = "ext_flow_ctr",
20121         .field_bit_size = 1,
20122         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
20123         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
20124                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20125         },
20126         {
20127         .description = "act_rec_int",
20128         .field_bit_size = 1,
20129         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20130         },
20131         {
20132         .description = "act_rec_size",
20133         .field_bit_size = 5,
20134         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
20135         .result_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,
20136                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20137         },
20138         {
20139         .description = "key_size",
20140         .field_bit_size = 9,
20141         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
20142         .result_operand = {
20143                 (0x0185 >> 8) & 0xff,
20144                 0x0185 & 0xff,
20145                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
20146                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20147         },
20148         {
20149         .description = "reserved",
20150         .field_bit_size = 11,
20151         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20152         },
20153         {
20154         .description = "strength",
20155         .field_bit_size = 2,
20156         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
20157         .result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,
20158                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20159         },
20160         {
20161         .description = "l1_cacheable",
20162         .field_bit_size = 1,
20163         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20164         },
20165         {
20166         .description = "valid",
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         /* class_tid: 14, wh_plus, table: int_em_0 */
20173         {
20174         .description = "act_rec_ptr",
20175         .field_bit_size = 33,
20176         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
20177         .result_operand = {
20178                 (BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR >> 8) & 0xff,
20179                 BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR & 0xff,
20180                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
20181                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20182         },
20183         {
20184         .description = "ext_flow_ctr",
20185         .field_bit_size = 1,
20186         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
20187         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
20188                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20189         },
20190         {
20191         .description = "act_rec_int",
20192         .field_bit_size = 1,
20193         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20194         },
20195         {
20196         .description = "act_rec_size",
20197         .field_bit_size = 5,
20198         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
20199         .result_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,
20200                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20201         },
20202         {
20203         .description = "key_size",
20204         .field_bit_size = 9,
20205         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
20206         .result_operand = {
20207                 (0x0185 >> 8) & 0xff,
20208                 0x0185 & 0xff,
20209                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
20210                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20211         },
20212         {
20213         .description = "reserved",
20214         .field_bit_size = 11,
20215         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20216         },
20217         {
20218         .description = "strength",
20219         .field_bit_size = 2,
20220         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
20221         .result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,
20222                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20223         },
20224         {
20225         .description = "l1_cacheable",
20226         .field_bit_size = 1,
20227         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20228         },
20229         {
20230         .description = "valid",
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         /* class_tid: 15, wh_plus, table: l2_cntxt_tcam_0 */
20237         {
20238         .description = "l2_cntxt_id",
20239         .field_bit_size = 10,
20240         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
20241         .result_operand = {
20242                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
20243                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
20244                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
20245                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20246         },
20247         {
20248         .description = "prof_func_id",
20249         .field_bit_size = 7,
20250         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
20251         .result_operand = {
20252                 (BNXT_ULP_GLB_REGFILE_INDEX_L2_PROF_FUNC_ID >> 8) & 0xff,
20253                 BNXT_ULP_GLB_REGFILE_INDEX_L2_PROF_FUNC_ID & 0xff,
20254                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
20255                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20256         },
20257         {
20258         .description = "l2_byp_lkup_en",
20259         .field_bit_size = 1,
20260         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20261         },
20262         {
20263         .description = "parif",
20264         .field_bit_size = 4,
20265         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,
20266         .result_operand = {
20267                 (BNXT_ULP_CF_IDX_PHY_PORT_PARIF >> 8) & 0xff,
20268                 BNXT_ULP_CF_IDX_PHY_PORT_PARIF & 0xff,
20269                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
20270                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20271         },
20272         {
20273         .description = "allowed_pri",
20274         .field_bit_size = 8,
20275         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20276         },
20277         {
20278         .description = "default_pri",
20279         .field_bit_size = 3,
20280         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20281         },
20282         {
20283         .description = "allowed_tpid",
20284         .field_bit_size = 6,
20285         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20286         },
20287         {
20288         .description = "default_tpid",
20289         .field_bit_size = 3,
20290         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20291         },
20292         {
20293         .description = "bd_act_en",
20294         .field_bit_size = 1,
20295         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20296         },
20297         {
20298         .description = "sp_rec_ptr",
20299         .field_bit_size = 16,
20300         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20301         },
20302         {
20303         .description = "byp_sp_lkup",
20304         .field_bit_size = 1,
20305         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
20306         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
20307                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20308         },
20309         {
20310         .description = "pri_anti_spoof_ctl",
20311         .field_bit_size = 2,
20312         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20313         },
20314         {
20315         .description = "tpid_anti_spoof_ctl",
20316         .field_bit_size = 2,
20317         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20318         },
20319         /* class_tid: 15, wh_plus, table: profile_tcam_cache_0 */
20320         {
20321         .description = "em_profile_id",
20322         .field_bit_size = 10,
20323         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
20324         .result_operand = {
20325                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
20326                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
20327                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
20328                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20329         },
20330         /* class_tid: 15, wh_plus, table: profile_tcam_0 */
20331         {
20332         .description = "wc_key_id",
20333         .field_bit_size = 4,
20334         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20335         },
20336         {
20337         .description = "wc_profile_id",
20338         .field_bit_size = 8,
20339         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20340         },
20341         {
20342         .description = "wc_search_en",
20343         .field_bit_size = 1,
20344         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20345         },
20346         {
20347         .description = "em_key_mask",
20348         .field_bit_size = 10,
20349         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
20350         .result_operand = {
20351                 (0x00f9 >> 8) & 0xff,
20352                 0x00f9 & 0xff,
20353                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
20354                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20355         },
20356         {
20357         .description = "em_key_id",
20358         .field_bit_size = 5,
20359         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
20360         .result_operand = {0x19, 0x00, 0x00, 0x00, 0x00, 0x00,
20361                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20362         },
20363         {
20364         .description = "em_profile_id",
20365         .field_bit_size = 8,
20366         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
20367         .result_operand = {
20368                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
20369                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
20370                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
20371                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20372         },
20373         {
20374         .description = "em_search_en",
20375         .field_bit_size = 1,
20376         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
20377         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
20378                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20379         },
20380         {
20381         .description = "pl_byp_lkup_en",
20382         .field_bit_size = 1,
20383         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20384         },
20385         /* class_tid: 15, wh_plus, table: ext_em_0 */
20386         {
20387         .description = "act_rec_ptr",
20388         .field_bit_size = 33,
20389         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
20390         .result_operand = {
20391                 (BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR >> 8) & 0xff,
20392                 BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR & 0xff,
20393                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
20394                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20395         },
20396         {
20397         .description = "ext_flow_ctr",
20398         .field_bit_size = 1,
20399         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
20400         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
20401                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20402         },
20403         {
20404         .description = "act_rec_int",
20405         .field_bit_size = 1,
20406         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20407         },
20408         {
20409         .description = "act_rec_size",
20410         .field_bit_size = 5,
20411         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
20412         .result_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,
20413                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20414         },
20415         {
20416         .description = "key_size",
20417         .field_bit_size = 9,
20418         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
20419         .result_operand = {
20420                 (0x0185 >> 8) & 0xff,
20421                 0x0185 & 0xff,
20422                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
20423                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20424         },
20425         {
20426         .description = "reserved",
20427         .field_bit_size = 11,
20428         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20429         },
20430         {
20431         .description = "strength",
20432         .field_bit_size = 2,
20433         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
20434         .result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,
20435                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20436         },
20437         {
20438         .description = "l1_cacheable",
20439         .field_bit_size = 1,
20440         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20441         },
20442         {
20443         .description = "valid",
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         /* class_tid: 15, wh_plus, table: int_em_0 */
20450         {
20451         .description = "act_rec_ptr",
20452         .field_bit_size = 33,
20453         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
20454         .result_operand = {
20455                 (BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR >> 8) & 0xff,
20456                 BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR & 0xff,
20457                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
20458                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20459         },
20460         {
20461         .description = "ext_flow_ctr",
20462         .field_bit_size = 1,
20463         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
20464         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
20465                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20466         },
20467         {
20468         .description = "act_rec_int",
20469         .field_bit_size = 1,
20470         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20471         },
20472         {
20473         .description = "act_rec_size",
20474         .field_bit_size = 5,
20475         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
20476         .result_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,
20477                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20478         },
20479         {
20480         .description = "key_size",
20481         .field_bit_size = 9,
20482         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
20483         .result_operand = {
20484                 (0x0185 >> 8) & 0xff,
20485                 0x0185 & 0xff,
20486                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
20487                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20488         },
20489         {
20490         .description = "reserved",
20491         .field_bit_size = 11,
20492         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20493         },
20494         {
20495         .description = "strength",
20496         .field_bit_size = 2,
20497         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
20498         .result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,
20499                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20500         },
20501         {
20502         .description = "l1_cacheable",
20503         .field_bit_size = 1,
20504         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20505         },
20506         {
20507         .description = "valid",
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         /* class_tid: 16, wh_plus, table: l2_cntxt_tcam_0 */
20514         {
20515         .description = "l2_cntxt_id",
20516         .field_bit_size = 10,
20517         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
20518         .result_operand = {
20519                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
20520                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
20521                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
20522                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20523         },
20524         {
20525         .description = "prof_func_id",
20526         .field_bit_size = 7,
20527         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
20528         .result_operand = {
20529                 (BNXT_ULP_GLB_REGFILE_INDEX_VXLAN_PROF_FUNC_ID >> 8) & 0xff,
20530                 BNXT_ULP_GLB_REGFILE_INDEX_VXLAN_PROF_FUNC_ID & 0xff,
20531                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
20532                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20533         },
20534         {
20535         .description = "l2_byp_lkup_en",
20536         .field_bit_size = 1,
20537         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20538         },
20539         {
20540         .description = "parif",
20541         .field_bit_size = 4,
20542         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,
20543         .result_operand = {
20544                 (BNXT_ULP_CF_IDX_PHY_PORT_PARIF >> 8) & 0xff,
20545                 BNXT_ULP_CF_IDX_PHY_PORT_PARIF & 0xff,
20546                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
20547                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20548         },
20549         {
20550         .description = "allowed_pri",
20551         .field_bit_size = 8,
20552         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20553         },
20554         {
20555         .description = "default_pri",
20556         .field_bit_size = 3,
20557         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20558         },
20559         {
20560         .description = "allowed_tpid",
20561         .field_bit_size = 6,
20562         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20563         },
20564         {
20565         .description = "default_tpid",
20566         .field_bit_size = 3,
20567         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20568         },
20569         {
20570         .description = "bd_act_en",
20571         .field_bit_size = 1,
20572         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20573         },
20574         {
20575         .description = "sp_rec_ptr",
20576         .field_bit_size = 16,
20577         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20578         },
20579         {
20580         .description = "byp_sp_lkup",
20581         .field_bit_size = 1,
20582         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
20583         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
20584                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20585         },
20586         {
20587         .description = "pri_anti_spoof_ctl",
20588         .field_bit_size = 2,
20589         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20590         },
20591         {
20592         .description = "tpid_anti_spoof_ctl",
20593         .field_bit_size = 2,
20594         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20595         },
20596         /* class_tid: 16, wh_plus, table: profile_tcam_cache_0 */
20597         {
20598         .description = "em_profile_id",
20599         .field_bit_size = 10,
20600         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
20601         .result_operand = {
20602                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
20603                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
20604                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
20605                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20606         },
20607         /* class_tid: 16, wh_plus, table: profile_tcam_0 */
20608         {
20609         .description = "wc_key_id",
20610         .field_bit_size = 4,
20611         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20612         },
20613         {
20614         .description = "wc_profile_id",
20615         .field_bit_size = 8,
20616         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20617         },
20618         {
20619         .description = "wc_search_en",
20620         .field_bit_size = 1,
20621         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20622         },
20623         {
20624         .description = "em_key_mask",
20625         .field_bit_size = 10,
20626         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
20627         .result_operand = {
20628                 (0x0031 >> 8) & 0xff,
20629                 0x0031 & 0xff,
20630                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
20631                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20632         },
20633         {
20634         .description = "em_key_id",
20635         .field_bit_size = 5,
20636         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
20637         .result_operand = {0x14, 0x00, 0x00, 0x00, 0x00, 0x00,
20638                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20639         },
20640         {
20641         .description = "em_profile_id",
20642         .field_bit_size = 8,
20643         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
20644         .result_operand = {
20645                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
20646                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
20647                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
20648                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20649         },
20650         {
20651         .description = "em_search_en",
20652         .field_bit_size = 1,
20653         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
20654         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
20655                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20656         },
20657         {
20658         .description = "pl_byp_lkup_en",
20659         .field_bit_size = 1,
20660         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20661         },
20662         /* class_tid: 16, wh_plus, table: ext_em_0 */
20663         {
20664         .description = "act_rec_ptr",
20665         .field_bit_size = 33,
20666         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
20667         .result_operand = {
20668                 (BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR >> 8) & 0xff,
20669                 BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR & 0xff,
20670                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
20671                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20672         },
20673         {
20674         .description = "ext_flow_ctr",
20675         .field_bit_size = 1,
20676         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
20677         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
20678                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20679         },
20680         {
20681         .description = "act_rec_int",
20682         .field_bit_size = 1,
20683         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20684         },
20685         {
20686         .description = "act_rec_size",
20687         .field_bit_size = 5,
20688         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
20689         .result_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,
20690                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20691         },
20692         {
20693         .description = "key_size",
20694         .field_bit_size = 9,
20695         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
20696         .result_operand = {
20697                 (0x00c5 >> 8) & 0xff,
20698                 0x00c5 & 0xff,
20699                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
20700                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20701         },
20702         {
20703         .description = "reserved",
20704         .field_bit_size = 11,
20705         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20706         },
20707         {
20708         .description = "strength",
20709         .field_bit_size = 2,
20710         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
20711         .result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,
20712                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20713         },
20714         {
20715         .description = "l1_cacheable",
20716         .field_bit_size = 1,
20717         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20718         },
20719         {
20720         .description = "valid",
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         /* class_tid: 16, wh_plus, table: int_em_0 */
20727         {
20728         .description = "act_rec_ptr",
20729         .field_bit_size = 33,
20730         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
20731         .result_operand = {
20732                 (BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR >> 8) & 0xff,
20733                 BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR & 0xff,
20734                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
20735                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20736         },
20737         {
20738         .description = "ext_flow_ctr",
20739         .field_bit_size = 1,
20740         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
20741         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
20742                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20743         },
20744         {
20745         .description = "act_rec_int",
20746         .field_bit_size = 1,
20747         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20748         },
20749         {
20750         .description = "act_rec_size",
20751         .field_bit_size = 5,
20752         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
20753         .result_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,
20754                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20755         },
20756         {
20757         .description = "key_size",
20758         .field_bit_size = 9,
20759         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
20760         .result_operand = {
20761                 (0x00c5 >> 8) & 0xff,
20762                 0x00c5 & 0xff,
20763                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
20764                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20765         },
20766         {
20767         .description = "reserved",
20768         .field_bit_size = 11,
20769         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20770         },
20771         {
20772         .description = "strength",
20773         .field_bit_size = 2,
20774         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
20775         .result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,
20776                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20777         },
20778         {
20779         .description = "l1_cacheable",
20780         .field_bit_size = 1,
20781         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20782         },
20783         {
20784         .description = "valid",
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         /* class_tid: 17, wh_plus, table: l2_cntxt_tcam_0 */
20791         {
20792         .description = "l2_cntxt_id",
20793         .field_bit_size = 10,
20794         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
20795         .result_operand = {
20796                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
20797                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
20798                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
20799                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20800         },
20801         {
20802         .description = "prof_func_id",
20803         .field_bit_size = 7,
20804         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
20805         .result_operand = {
20806                 (BNXT_ULP_GLB_REGFILE_INDEX_VXLAN_PROF_FUNC_ID >> 8) & 0xff,
20807                 BNXT_ULP_GLB_REGFILE_INDEX_VXLAN_PROF_FUNC_ID & 0xff,
20808                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
20809                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20810         },
20811         {
20812         .description = "l2_byp_lkup_en",
20813         .field_bit_size = 1,
20814         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20815         },
20816         {
20817         .description = "parif",
20818         .field_bit_size = 4,
20819         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,
20820         .result_operand = {
20821                 (BNXT_ULP_CF_IDX_PHY_PORT_PARIF >> 8) & 0xff,
20822                 BNXT_ULP_CF_IDX_PHY_PORT_PARIF & 0xff,
20823                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
20824                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20825         },
20826         {
20827         .description = "allowed_pri",
20828         .field_bit_size = 8,
20829         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20830         },
20831         {
20832         .description = "default_pri",
20833         .field_bit_size = 3,
20834         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20835         },
20836         {
20837         .description = "allowed_tpid",
20838         .field_bit_size = 6,
20839         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20840         },
20841         {
20842         .description = "default_tpid",
20843         .field_bit_size = 3,
20844         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20845         },
20846         {
20847         .description = "bd_act_en",
20848         .field_bit_size = 1,
20849         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20850         },
20851         {
20852         .description = "sp_rec_ptr",
20853         .field_bit_size = 16,
20854         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20855         },
20856         {
20857         .description = "byp_sp_lkup",
20858         .field_bit_size = 1,
20859         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
20860         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
20861                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20862         },
20863         {
20864         .description = "pri_anti_spoof_ctl",
20865         .field_bit_size = 2,
20866         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20867         },
20868         {
20869         .description = "tpid_anti_spoof_ctl",
20870         .field_bit_size = 2,
20871         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20872         },
20873         /* class_tid: 17, wh_plus, table: profile_tcam_cache_0 */
20874         {
20875         .description = "em_profile_id",
20876         .field_bit_size = 10,
20877         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
20878         .result_operand = {
20879                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
20880                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
20881                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
20882                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20883         },
20884         /* class_tid: 17, wh_plus, table: profile_tcam_0 */
20885         {
20886         .description = "wc_key_id",
20887         .field_bit_size = 4,
20888         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20889         },
20890         {
20891         .description = "wc_profile_id",
20892         .field_bit_size = 8,
20893         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20894         },
20895         {
20896         .description = "wc_search_en",
20897         .field_bit_size = 1,
20898         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20899         },
20900         {
20901         .description = "em_key_mask",
20902         .field_bit_size = 10,
20903         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
20904         .result_operand = {
20905                 (0x0031 >> 8) & 0xff,
20906                 0x0031 & 0xff,
20907                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
20908                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20909         },
20910         {
20911         .description = "em_key_id",
20912         .field_bit_size = 5,
20913         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
20914         .result_operand = {0x18, 0x00, 0x00, 0x00, 0x00, 0x00,
20915                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20916         },
20917         {
20918         .description = "em_profile_id",
20919         .field_bit_size = 8,
20920         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
20921         .result_operand = {
20922                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
20923                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
20924                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
20925                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20926         },
20927         {
20928         .description = "em_search_en",
20929         .field_bit_size = 1,
20930         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
20931         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
20932                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20933         },
20934         {
20935         .description = "pl_byp_lkup_en",
20936         .field_bit_size = 1,
20937         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20938         },
20939         /* class_tid: 17, wh_plus, table: ext_em_0 */
20940         {
20941         .description = "act_rec_ptr",
20942         .field_bit_size = 33,
20943         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
20944         .result_operand = {
20945                 (BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR >> 8) & 0xff,
20946                 BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR & 0xff,
20947                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
20948                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20949         },
20950         {
20951         .description = "ext_flow_ctr",
20952         .field_bit_size = 1,
20953         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
20954         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
20955                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20956         },
20957         {
20958         .description = "act_rec_int",
20959         .field_bit_size = 1,
20960         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20961         },
20962         {
20963         .description = "act_rec_size",
20964         .field_bit_size = 5,
20965         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
20966         .result_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,
20967                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20968         },
20969         {
20970         .description = "key_size",
20971         .field_bit_size = 9,
20972         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
20973         .result_operand = {
20974                 (0x0185 >> 8) & 0xff,
20975                 0x0185 & 0xff,
20976                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
20977                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20978         },
20979         {
20980         .description = "reserved",
20981         .field_bit_size = 11,
20982         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20983         },
20984         {
20985         .description = "strength",
20986         .field_bit_size = 2,
20987         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
20988         .result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,
20989                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20990         },
20991         {
20992         .description = "l1_cacheable",
20993         .field_bit_size = 1,
20994         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20995         },
20996         {
20997         .description = "valid",
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         /* class_tid: 17, wh_plus, table: int_em_0 */
21004         {
21005         .description = "act_rec_ptr",
21006         .field_bit_size = 33,
21007         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
21008         .result_operand = {
21009                 (BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR >> 8) & 0xff,
21010                 BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR & 0xff,
21011                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
21012                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21013         },
21014         {
21015         .description = "ext_flow_ctr",
21016         .field_bit_size = 1,
21017         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
21018         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
21019                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21020         },
21021         {
21022         .description = "act_rec_int",
21023         .field_bit_size = 1,
21024         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21025         },
21026         {
21027         .description = "act_rec_size",
21028         .field_bit_size = 5,
21029         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
21030         .result_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,
21031                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21032         },
21033         {
21034         .description = "key_size",
21035         .field_bit_size = 9,
21036         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
21037         .result_operand = {
21038                 (0x0185 >> 8) & 0xff,
21039                 0x0185 & 0xff,
21040                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
21041                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21042         },
21043         {
21044         .description = "reserved",
21045         .field_bit_size = 11,
21046         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21047         },
21048         {
21049         .description = "strength",
21050         .field_bit_size = 2,
21051         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
21052         .result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,
21053                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21054         },
21055         {
21056         .description = "l1_cacheable",
21057         .field_bit_size = 1,
21058         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21059         },
21060         {
21061         .description = "valid",
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         /* class_tid: 18, wh_plus, table: int_flow_counter_tbl_0 */
21068         {
21069         .description = "count",
21070         .field_bit_size = 64,
21071         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21072         },
21073         /* class_tid: 18, wh_plus, table: l2_cntxt_tcam_0 */
21074         {
21075         .description = "l2_cntxt_id",
21076         .field_bit_size = 10,
21077         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
21078         .result_operand = {
21079                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
21080                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
21081                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
21082                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21083         },
21084         {
21085         .description = "prof_func_id",
21086         .field_bit_size = 7,
21087         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
21088         .result_operand = {
21089                 (BNXT_ULP_GLB_REGFILE_INDEX_VXLAN_PROF_FUNC_ID >> 8) & 0xff,
21090                 BNXT_ULP_GLB_REGFILE_INDEX_VXLAN_PROF_FUNC_ID & 0xff,
21091                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
21092                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21093         },
21094         {
21095         .description = "l2_byp_lkup_en",
21096         .field_bit_size = 1,
21097         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21098         },
21099         {
21100         .description = "parif",
21101         .field_bit_size = 4,
21102         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,
21103         .result_operand = {
21104                 (BNXT_ULP_CF_IDX_PHY_PORT_PARIF >> 8) & 0xff,
21105                 BNXT_ULP_CF_IDX_PHY_PORT_PARIF & 0xff,
21106                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
21107                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21108         },
21109         {
21110         .description = "allowed_pri",
21111         .field_bit_size = 8,
21112         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21113         },
21114         {
21115         .description = "default_pri",
21116         .field_bit_size = 3,
21117         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21118         },
21119         {
21120         .description = "allowed_tpid",
21121         .field_bit_size = 6,
21122         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21123         },
21124         {
21125         .description = "default_tpid",
21126         .field_bit_size = 3,
21127         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21128         },
21129         {
21130         .description = "bd_act_en",
21131         .field_bit_size = 1,
21132         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21133         },
21134         {
21135         .description = "sp_rec_ptr",
21136         .field_bit_size = 16,
21137         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21138         },
21139         {
21140         .description = "byp_sp_lkup",
21141         .field_bit_size = 1,
21142         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
21143         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
21144                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21145         },
21146         {
21147         .description = "pri_anti_spoof_ctl",
21148         .field_bit_size = 2,
21149         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21150         },
21151         {
21152         .description = "tpid_anti_spoof_ctl",
21153         .field_bit_size = 2,
21154         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21155         },
21156         /* class_tid: 18, wh_plus, table: profile_tcam_cache_0 */
21157         {
21158         .description = "em_profile_id",
21159         .field_bit_size = 10,
21160         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
21161         .result_operand = {
21162                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
21163                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
21164                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
21165                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21166         },
21167         {
21168         .description = "wc_profile_id",
21169         .field_bit_size = 10,
21170         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
21171         .result_operand = {
21172                 (BNXT_ULP_REGFILE_INDEX_WC_PROFILE_ID_0 >> 8) & 0xff,
21173                 BNXT_ULP_REGFILE_INDEX_WC_PROFILE_ID_0 & 0xff,
21174                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
21175                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21176         },
21177         /* class_tid: 18, wh_plus, table: profile_tcam_0 */
21178         {
21179         .description = "wc_key_id",
21180         .field_bit_size = 4,
21181         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21182         },
21183         {
21184         .description = "wc_profile_id",
21185         .field_bit_size = 8,
21186         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
21187         .result_operand = {
21188                 (BNXT_ULP_REGFILE_INDEX_WC_PROFILE_ID_0 >> 8) & 0xff,
21189                 BNXT_ULP_REGFILE_INDEX_WC_PROFILE_ID_0 & 0xff,
21190                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
21191                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21192         },
21193         {
21194         .description = "wc_search_en",
21195         .field_bit_size = 1,
21196         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
21197         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
21198                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21199         },
21200         {
21201         .description = "em_key_mask",
21202         .field_bit_size = 10,
21203         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
21204         .result_operand = {
21205                 (0x001b >> 8) & 0xff,
21206                 0x001b & 0xff,
21207                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
21208                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21209         },
21210         {
21211         .description = "em_key_id",
21212         .field_bit_size = 5,
21213         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
21214         .result_operand = {0x08, 0x00, 0x00, 0x00, 0x00, 0x00,
21215                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21216         },
21217         {
21218         .description = "em_profile_id",
21219         .field_bit_size = 8,
21220         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
21221         .result_operand = {
21222                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
21223                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
21224                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
21225                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21226         },
21227         {
21228         .description = "em_search_en",
21229         .field_bit_size = 1,
21230         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
21231         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
21232                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21233         },
21234         {
21235         .description = "pl_byp_lkup_en",
21236         .field_bit_size = 1,
21237         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21238         },
21239         /* class_tid: 18, wh_plus, table: wm_0 */
21240         {
21241         .description = "strength",
21242         .field_bit_size = 2,
21243         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
21244         .result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,
21245                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21246         },
21247         {
21248         .description = "act_rec_ptr",
21249         .field_bit_size = 16,
21250         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
21251         .result_operand = {
21252                 (BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR >> 8) & 0xff,
21253                 BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR & 0xff,
21254                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
21255                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21256         },
21257         {
21258         .description = "valid",
21259         .field_bit_size = 1,
21260         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
21261         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
21262                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21263         },
21264         /* class_tid: 19, wh_plus, table: l2_cntxt_tcam_0 */
21265         {
21266         .description = "l2_cntxt_id",
21267         .field_bit_size = 10,
21268         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
21269         .result_operand = {
21270                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
21271                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
21272                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
21273                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21274         },
21275         {
21276         .description = "prof_func_id",
21277         .field_bit_size = 7,
21278         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
21279         .result_operand = {
21280                 (BNXT_ULP_GLB_REGFILE_INDEX_VXLAN_PROF_FUNC_ID >> 8) & 0xff,
21281                 BNXT_ULP_GLB_REGFILE_INDEX_VXLAN_PROF_FUNC_ID & 0xff,
21282                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
21283                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21284         },
21285         {
21286         .description = "l2_byp_lkup_en",
21287         .field_bit_size = 1,
21288         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21289         },
21290         {
21291         .description = "parif",
21292         .field_bit_size = 4,
21293         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,
21294         .result_operand = {
21295                 (BNXT_ULP_CF_IDX_PHY_PORT_PARIF >> 8) & 0xff,
21296                 BNXT_ULP_CF_IDX_PHY_PORT_PARIF & 0xff,
21297                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
21298                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21299         },
21300         {
21301         .description = "allowed_pri",
21302         .field_bit_size = 8,
21303         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21304         },
21305         {
21306         .description = "default_pri",
21307         .field_bit_size = 3,
21308         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21309         },
21310         {
21311         .description = "allowed_tpid",
21312         .field_bit_size = 6,
21313         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21314         },
21315         {
21316         .description = "default_tpid",
21317         .field_bit_size = 3,
21318         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21319         },
21320         {
21321         .description = "bd_act_en",
21322         .field_bit_size = 1,
21323         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21324         },
21325         {
21326         .description = "sp_rec_ptr",
21327         .field_bit_size = 16,
21328         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21329         },
21330         {
21331         .description = "byp_sp_lkup",
21332         .field_bit_size = 1,
21333         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
21334         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
21335                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21336         },
21337         {
21338         .description = "pri_anti_spoof_ctl",
21339         .field_bit_size = 2,
21340         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21341         },
21342         {
21343         .description = "tpid_anti_spoof_ctl",
21344         .field_bit_size = 2,
21345         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21346         },
21347         /* class_tid: 19, wh_plus, table: profile_tcam_cache_0 */
21348         {
21349         .description = "em_profile_id",
21350         .field_bit_size = 10,
21351         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
21352         .result_operand = {
21353                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
21354                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
21355                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
21356                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21357         },
21358         {
21359         .description = "wc_profile_id",
21360         .field_bit_size = 10,
21361         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
21362         .result_operand = {
21363                 (BNXT_ULP_REGFILE_INDEX_WC_PROFILE_ID_0 >> 8) & 0xff,
21364                 BNXT_ULP_REGFILE_INDEX_WC_PROFILE_ID_0 & 0xff,
21365                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
21366                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21367         },
21368         /* class_tid: 19, wh_plus, table: profile_tcam_0 */
21369         {
21370         .description = "wc_key_id",
21371         .field_bit_size = 4,
21372         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21373         },
21374         {
21375         .description = "wc_profile_id",
21376         .field_bit_size = 8,
21377         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21378         },
21379         {
21380         .description = "wc_search_en",
21381         .field_bit_size = 1,
21382         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21383         },
21384         {
21385         .description = "em_key_mask",
21386         .field_bit_size = 10,
21387         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21388         },
21389         {
21390         .description = "em_key_id",
21391         .field_bit_size = 5,
21392         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21393         },
21394         {
21395         .description = "em_profile_id",
21396         .field_bit_size = 8,
21397         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21398         },
21399         {
21400         .description = "em_search_en",
21401         .field_bit_size = 1,
21402         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21403         },
21404         {
21405         .description = "pl_byp_lkup_en",
21406         .field_bit_size = 1,
21407         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21408         },
21409         /* class_tid: 19, wh_plus, table: int_em_0 */
21410         {
21411         .description = "act_rec_ptr",
21412         .field_bit_size = 33,
21413         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
21414         .result_operand = {
21415                 (BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR >> 8) & 0xff,
21416                 BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR & 0xff,
21417                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
21418                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21419         },
21420         {
21421         .description = "ext_flow_ctr",
21422         .field_bit_size = 1,
21423         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
21424         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
21425                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21426         },
21427         {
21428         .description = "act_rec_int",
21429         .field_bit_size = 1,
21430         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21431         },
21432         {
21433         .description = "act_rec_size",
21434         .field_bit_size = 5,
21435         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
21436         .result_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,
21437                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21438         },
21439         {
21440         .description = "key_size",
21441         .field_bit_size = 9,
21442         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
21443         .result_operand = {
21444                 (0x006d >> 8) & 0xff,
21445                 0x006d & 0xff,
21446                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
21447                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21448         },
21449         {
21450         .description = "reserved",
21451         .field_bit_size = 11,
21452         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21453         },
21454         {
21455         .description = "strength",
21456         .field_bit_size = 2,
21457         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
21458         .result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,
21459                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21460         },
21461         {
21462         .description = "l1_cacheable",
21463         .field_bit_size = 1,
21464         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21465         },
21466         {
21467         .description = "valid",
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         /* class_tid: 19, wh_plus, table: ext_em_0 */
21474         {
21475         .description = "act_rec_ptr",
21476         .field_bit_size = 33,
21477         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
21478         .result_operand = {
21479                 (BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR >> 8) & 0xff,
21480                 BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR & 0xff,
21481                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
21482                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21483         },
21484         {
21485         .description = "ext_flow_ctr",
21486         .field_bit_size = 1,
21487         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
21488         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
21489                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21490         },
21491         {
21492         .description = "act_rec_int",
21493         .field_bit_size = 1,
21494         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21495         },
21496         {
21497         .description = "act_rec_size",
21498         .field_bit_size = 5,
21499         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
21500         .result_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,
21501                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21502         },
21503         {
21504         .description = "key_size",
21505         .field_bit_size = 9,
21506         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
21507         .result_operand = {
21508                 (0x006d >> 8) & 0xff,
21509                 0x006d & 0xff,
21510                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
21511                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21512         },
21513         {
21514         .description = "reserved",
21515         .field_bit_size = 11,
21516         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21517         },
21518         {
21519         .description = "strength",
21520         .field_bit_size = 2,
21521         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
21522         .result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,
21523                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21524         },
21525         {
21526         .description = "l1_cacheable",
21527         .field_bit_size = 1,
21528         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21529         },
21530         {
21531         .description = "valid",
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         /* class_tid: 20, wh_plus, table: l2_cntxt_cache_0 */
21538         {
21539         .description = "l2_cntxt_id",
21540         .field_bit_size = 10,
21541         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
21542         .result_operand = {
21543                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
21544                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
21545                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
21546                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21547         },
21548         /* class_tid: 20, wh_plus, table: l2_cntxt_tcam_0 */
21549         {
21550         .description = "l2_cntxt_id",
21551         .field_bit_size = 10,
21552         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
21553         .result_operand = {
21554                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
21555                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
21556                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
21557                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21558         },
21559         {
21560         .description = "prof_func_id",
21561         .field_bit_size = 7,
21562         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
21563         .result_operand = {
21564                 (BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID >> 8) & 0xff,
21565                 BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID & 0xff,
21566                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
21567                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21568         },
21569         {
21570         .description = "l2_byp_lkup_en",
21571         .field_bit_size = 1,
21572         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21573         },
21574         {
21575         .description = "parif",
21576         .field_bit_size = 4,
21577         .result_opcode = BNXT_ULP_MAPPER_OPC_IF_COMP_FIELD_THEN_CF_ELSE_CF,
21578         .result_operand = {
21579                 (BNXT_ULP_CF_IDX_MATCH_PORT_IS_VFREP >> 8) & 0xff,
21580                 BNXT_ULP_CF_IDX_MATCH_PORT_IS_VFREP & 0xff,
21581                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
21582                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
21583         .result_operand_true = {
21584                 (BNXT_ULP_CF_IDX_LOOPBACK_PARIF >> 8) & 0xff,
21585                 BNXT_ULP_CF_IDX_LOOPBACK_PARIF & 0xff,
21586                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
21587                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
21588         .result_operand_false = {
21589                 (BNXT_ULP_CF_IDX_DRV_FUNC_PARIF >> 8) & 0xff,
21590                 BNXT_ULP_CF_IDX_DRV_FUNC_PARIF & 0xff,
21591                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
21592                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21593         },
21594         {
21595         .description = "allowed_pri",
21596         .field_bit_size = 8,
21597         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21598         },
21599         {
21600         .description = "default_pri",
21601         .field_bit_size = 3,
21602         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21603         },
21604         {
21605         .description = "allowed_tpid",
21606         .field_bit_size = 6,
21607         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21608         },
21609         {
21610         .description = "default_tpid",
21611         .field_bit_size = 3,
21612         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21613         },
21614         {
21615         .description = "bd_act_en",
21616         .field_bit_size = 1,
21617         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21618         },
21619         {
21620         .description = "sp_rec_ptr",
21621         .field_bit_size = 16,
21622         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
21623         .result_operand = {
21624                 (BNXT_ULP_REGFILE_INDEX_MAIN_SP_PTR >> 8) & 0xff,
21625                 BNXT_ULP_REGFILE_INDEX_MAIN_SP_PTR & 0xff,
21626                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
21627                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21628         },
21629         {
21630         .description = "byp_sp_lkup",
21631         .field_bit_size = 1,
21632         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
21633         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
21634                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21635         },
21636         {
21637         .description = "pri_anti_spoof_ctl",
21638         .field_bit_size = 2,
21639         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21640         },
21641         {
21642         .description = "tpid_anti_spoof_ctl",
21643         .field_bit_size = 2,
21644         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21645         },
21646         /* class_tid: 20, wh_plus, table: profile_tcam_cache_0 */
21647         {
21648         .description = "em_profile_id",
21649         .field_bit_size = 10,
21650         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
21651         .result_operand = {
21652                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
21653                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
21654                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
21655                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21656         },
21657         /* class_tid: 20, wh_plus, table: profile_tcam_0 */
21658         {
21659         .description = "wc_key_id",
21660         .field_bit_size = 4,
21661         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21662         },
21663         {
21664         .description = "wc_profile_id",
21665         .field_bit_size = 8,
21666         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21667         },
21668         {
21669         .description = "wc_search_en",
21670         .field_bit_size = 1,
21671         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21672         },
21673         {
21674         .description = "em_key_mask",
21675         .field_bit_size = 10,
21676         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
21677         .result_operand = {
21678                 (0x00f9 >> 8) & 0xff,
21679                 0x00f9 & 0xff,
21680                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
21681                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21682         },
21683         {
21684         .description = "em_key_id",
21685         .field_bit_size = 5,
21686         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
21687         .result_operand = {0x15, 0x00, 0x00, 0x00, 0x00, 0x00,
21688                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21689         },
21690         {
21691         .description = "em_profile_id",
21692         .field_bit_size = 8,
21693         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
21694         .result_operand = {
21695                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
21696                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
21697                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
21698                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21699         },
21700         {
21701         .description = "em_search_en",
21702         .field_bit_size = 1,
21703         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
21704         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
21705                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21706         },
21707         {
21708         .description = "pl_byp_lkup_en",
21709         .field_bit_size = 1,
21710         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21711         },
21712         /* class_tid: 20, wh_plus, table: ext_em_0 */
21713         {
21714         .description = "act_rec_ptr",
21715         .field_bit_size = 33,
21716         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
21717         .result_operand = {
21718                 (BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR >> 8) & 0xff,
21719                 BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR & 0xff,
21720                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
21721                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21722         },
21723         {
21724         .description = "ext_flow_ctr",
21725         .field_bit_size = 1,
21726         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
21727         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
21728                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21729         },
21730         {
21731         .description = "act_rec_int",
21732         .field_bit_size = 1,
21733         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21734         },
21735         {
21736         .description = "act_rec_size",
21737         .field_bit_size = 5,
21738         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
21739         .result_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,
21740                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21741         },
21742         {
21743         .description = "key_size",
21744         .field_bit_size = 9,
21745         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
21746         .result_operand = {
21747                 (0x00c5 >> 8) & 0xff,
21748                 0x00c5 & 0xff,
21749                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
21750                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21751         },
21752         {
21753         .description = "reserved",
21754         .field_bit_size = 11,
21755         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21756         },
21757         {
21758         .description = "strength",
21759         .field_bit_size = 2,
21760         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
21761         .result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,
21762                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21763         },
21764         {
21765         .description = "l1_cacheable",
21766         .field_bit_size = 1,
21767         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21768         },
21769         {
21770         .description = "valid",
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         /* class_tid: 20, wh_plus, table: int_em_0 */
21777         {
21778         .description = "act_rec_ptr",
21779         .field_bit_size = 33,
21780         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
21781         .result_operand = {
21782                 (BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR >> 8) & 0xff,
21783                 BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR & 0xff,
21784                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
21785                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21786         },
21787         {
21788         .description = "ext_flow_ctr",
21789         .field_bit_size = 1,
21790         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
21791         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
21792                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21793         },
21794         {
21795         .description = "act_rec_int",
21796         .field_bit_size = 1,
21797         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21798         },
21799         {
21800         .description = "act_rec_size",
21801         .field_bit_size = 5,
21802         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
21803         .result_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,
21804                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21805         },
21806         {
21807         .description = "key_size",
21808         .field_bit_size = 9,
21809         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
21810         .result_operand = {
21811                 (0x00c5 >> 8) & 0xff,
21812                 0x00c5 & 0xff,
21813                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
21814                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21815         },
21816         {
21817         .description = "reserved",
21818         .field_bit_size = 11,
21819         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21820         },
21821         {
21822         .description = "strength",
21823         .field_bit_size = 2,
21824         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
21825         .result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,
21826                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21827         },
21828         {
21829         .description = "l1_cacheable",
21830         .field_bit_size = 1,
21831         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21832         },
21833         {
21834         .description = "valid",
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         /* class_tid: 21, wh_plus, table: l2_cntxt_cache_0 */
21841         {
21842         .description = "l2_cntxt_id",
21843         .field_bit_size = 10,
21844         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
21845         .result_operand = {
21846                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
21847                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
21848                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
21849                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21850         },
21851         /* class_tid: 21, wh_plus, table: l2_cntxt_tcam_0 */
21852         {
21853         .description = "l2_cntxt_id",
21854         .field_bit_size = 10,
21855         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
21856         .result_operand = {
21857                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
21858                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
21859                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
21860                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21861         },
21862         {
21863         .description = "prof_func_id",
21864         .field_bit_size = 7,
21865         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
21866         .result_operand = {
21867                 (BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID >> 8) & 0xff,
21868                 BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID & 0xff,
21869                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
21870                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21871         },
21872         {
21873         .description = "l2_byp_lkup_en",
21874         .field_bit_size = 1,
21875         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21876         },
21877         {
21878         .description = "parif",
21879         .field_bit_size = 4,
21880         .result_opcode = BNXT_ULP_MAPPER_OPC_IF_COMP_FIELD_THEN_CF_ELSE_CF,
21881         .result_operand = {
21882                 (BNXT_ULP_CF_IDX_MATCH_PORT_IS_VFREP >> 8) & 0xff,
21883                 BNXT_ULP_CF_IDX_MATCH_PORT_IS_VFREP & 0xff,
21884                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
21885                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
21886         .result_operand_true = {
21887                 (BNXT_ULP_CF_IDX_LOOPBACK_PARIF >> 8) & 0xff,
21888                 BNXT_ULP_CF_IDX_LOOPBACK_PARIF & 0xff,
21889                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
21890                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
21891         .result_operand_false = {
21892                 (BNXT_ULP_CF_IDX_DRV_FUNC_PARIF >> 8) & 0xff,
21893                 BNXT_ULP_CF_IDX_DRV_FUNC_PARIF & 0xff,
21894                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
21895                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21896         },
21897         {
21898         .description = "allowed_pri",
21899         .field_bit_size = 8,
21900         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21901         },
21902         {
21903         .description = "default_pri",
21904         .field_bit_size = 3,
21905         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21906         },
21907         {
21908         .description = "allowed_tpid",
21909         .field_bit_size = 6,
21910         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21911         },
21912         {
21913         .description = "default_tpid",
21914         .field_bit_size = 3,
21915         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21916         },
21917         {
21918         .description = "bd_act_en",
21919         .field_bit_size = 1,
21920         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21921         },
21922         {
21923         .description = "sp_rec_ptr",
21924         .field_bit_size = 16,
21925         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
21926         .result_operand = {
21927                 (BNXT_ULP_REGFILE_INDEX_MAIN_SP_PTR >> 8) & 0xff,
21928                 BNXT_ULP_REGFILE_INDEX_MAIN_SP_PTR & 0xff,
21929                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
21930                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21931         },
21932         {
21933         .description = "byp_sp_lkup",
21934         .field_bit_size = 1,
21935         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
21936         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
21937                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21938         },
21939         {
21940         .description = "pri_anti_spoof_ctl",
21941         .field_bit_size = 2,
21942         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21943         },
21944         {
21945         .description = "tpid_anti_spoof_ctl",
21946         .field_bit_size = 2,
21947         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21948         },
21949         /* class_tid: 21, wh_plus, table: profile_tcam_cache_0 */
21950         {
21951         .description = "em_profile_id",
21952         .field_bit_size = 10,
21953         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
21954         .result_operand = {
21955                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
21956                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
21957                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
21958                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21959         },
21960         /* class_tid: 21, wh_plus, table: profile_tcam_0 */
21961         {
21962         .description = "wc_key_id",
21963         .field_bit_size = 4,
21964         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21965         },
21966         {
21967         .description = "wc_profile_id",
21968         .field_bit_size = 8,
21969         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21970         },
21971         {
21972         .description = "wc_search_en",
21973         .field_bit_size = 1,
21974         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21975         },
21976         {
21977         .description = "em_key_mask",
21978         .field_bit_size = 10,
21979         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
21980         .result_operand = {
21981                 (0x00f9 >> 8) & 0xff,
21982                 0x00f9 & 0xff,
21983                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
21984                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21985         },
21986         {
21987         .description = "em_key_id",
21988         .field_bit_size = 5,
21989         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
21990         .result_operand = {0x15, 0x00, 0x00, 0x00, 0x00, 0x00,
21991                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21992         },
21993         {
21994         .description = "em_profile_id",
21995         .field_bit_size = 8,
21996         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
21997         .result_operand = {
21998                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
21999                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
22000                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
22001                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22002         },
22003         {
22004         .description = "em_search_en",
22005         .field_bit_size = 1,
22006         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
22007         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
22008                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22009         },
22010         {
22011         .description = "pl_byp_lkup_en",
22012         .field_bit_size = 1,
22013         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22014         },
22015         /* class_tid: 21, wh_plus, table: ext_em_0 */
22016         {
22017         .description = "act_rec_ptr",
22018         .field_bit_size = 33,
22019         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
22020         .result_operand = {
22021                 (BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR >> 8) & 0xff,
22022                 BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR & 0xff,
22023                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
22024                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22025         },
22026         {
22027         .description = "ext_flow_ctr",
22028         .field_bit_size = 1,
22029         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
22030         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
22031                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22032         },
22033         {
22034         .description = "act_rec_int",
22035         .field_bit_size = 1,
22036         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22037         },
22038         {
22039         .description = "act_rec_size",
22040         .field_bit_size = 5,
22041         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
22042         .result_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,
22043                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22044         },
22045         {
22046         .description = "key_size",
22047         .field_bit_size = 9,
22048         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
22049         .result_operand = {
22050                 (0x00c5 >> 8) & 0xff,
22051                 0x00c5 & 0xff,
22052                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
22053                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22054         },
22055         {
22056         .description = "reserved",
22057         .field_bit_size = 11,
22058         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22059         },
22060         {
22061         .description = "strength",
22062         .field_bit_size = 2,
22063         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
22064         .result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,
22065                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22066         },
22067         {
22068         .description = "l1_cacheable",
22069         .field_bit_size = 1,
22070         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22071         },
22072         {
22073         .description = "valid",
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         /* class_tid: 21, wh_plus, table: int_em_0 */
22080         {
22081         .description = "act_rec_ptr",
22082         .field_bit_size = 33,
22083         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
22084         .result_operand = {
22085                 (BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR >> 8) & 0xff,
22086                 BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR & 0xff,
22087                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
22088                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22089         },
22090         {
22091         .description = "ext_flow_ctr",
22092         .field_bit_size = 1,
22093         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
22094         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
22095                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22096         },
22097         {
22098         .description = "act_rec_int",
22099         .field_bit_size = 1,
22100         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22101         },
22102         {
22103         .description = "act_rec_size",
22104         .field_bit_size = 5,
22105         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
22106         .result_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,
22107                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22108         },
22109         {
22110         .description = "key_size",
22111         .field_bit_size = 9,
22112         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
22113         .result_operand = {
22114                 (0x00c5 >> 8) & 0xff,
22115                 0x00c5 & 0xff,
22116                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
22117                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22118         },
22119         {
22120         .description = "reserved",
22121         .field_bit_size = 11,
22122         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22123         },
22124         {
22125         .description = "strength",
22126         .field_bit_size = 2,
22127         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
22128         .result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,
22129                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22130         },
22131         {
22132         .description = "l1_cacheable",
22133         .field_bit_size = 1,
22134         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22135         },
22136         {
22137         .description = "valid",
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         /* class_tid: 22, wh_plus, table: l2_cntxt_cache_0 */
22144         {
22145         .description = "l2_cntxt_id",
22146         .field_bit_size = 10,
22147         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
22148         .result_operand = {
22149                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
22150                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
22151                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
22152                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22153         },
22154         /* class_tid: 22, wh_plus, table: l2_cntxt_0 */
22155         {
22156         .description = "l2_cntxt_id",
22157         .field_bit_size = 10,
22158         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
22159         .result_operand = {
22160                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
22161                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
22162                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
22163                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22164         },
22165         {
22166         .description = "prof_func_id",
22167         .field_bit_size = 7,
22168         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
22169         .result_operand = {
22170                 (BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID >> 8) & 0xff,
22171                 BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID & 0xff,
22172                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
22173                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22174         },
22175         {
22176         .description = "l2_byp_lkup_en",
22177         .field_bit_size = 1,
22178         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22179         },
22180         {
22181         .description = "parif",
22182         .field_bit_size = 4,
22183         .result_opcode = BNXT_ULP_MAPPER_OPC_IF_COMP_FIELD_THEN_CF_ELSE_CF,
22184         .result_operand = {
22185                 (BNXT_ULP_CF_IDX_MATCH_PORT_IS_VFREP >> 8) & 0xff,
22186                 BNXT_ULP_CF_IDX_MATCH_PORT_IS_VFREP & 0xff,
22187                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
22188                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
22189         .result_operand_true = {
22190                 (BNXT_ULP_CF_IDX_LOOPBACK_PARIF >> 8) & 0xff,
22191                 BNXT_ULP_CF_IDX_LOOPBACK_PARIF & 0xff,
22192                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
22193                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
22194         .result_operand_false = {
22195                 (BNXT_ULP_CF_IDX_DRV_FUNC_PARIF >> 8) & 0xff,
22196                 BNXT_ULP_CF_IDX_DRV_FUNC_PARIF & 0xff,
22197                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
22198                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22199         },
22200         {
22201         .description = "allowed_pri",
22202         .field_bit_size = 8,
22203         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22204         },
22205         {
22206         .description = "default_pri",
22207         .field_bit_size = 3,
22208         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22209         },
22210         {
22211         .description = "allowed_tpid",
22212         .field_bit_size = 6,
22213         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22214         },
22215         {
22216         .description = "default_tpid",
22217         .field_bit_size = 3,
22218         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22219         },
22220         {
22221         .description = "bd_act_en",
22222         .field_bit_size = 1,
22223         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22224         },
22225         {
22226         .description = "sp_rec_ptr",
22227         .field_bit_size = 16,
22228         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
22229         .result_operand = {
22230                 (BNXT_ULP_REGFILE_INDEX_MAIN_SP_PTR >> 8) & 0xff,
22231                 BNXT_ULP_REGFILE_INDEX_MAIN_SP_PTR & 0xff,
22232                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
22233                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22234         },
22235         {
22236         .description = "byp_sp_lkup",
22237         .field_bit_size = 1,
22238         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
22239         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
22240                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22241         },
22242         {
22243         .description = "pri_anti_spoof_ctl",
22244         .field_bit_size = 2,
22245         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22246         },
22247         {
22248         .description = "tpid_anti_spoof_ctl",
22249         .field_bit_size = 2,
22250         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22251         },
22252         /* class_tid: 22, wh_plus, table: profile_tcam_cache_0 */
22253         {
22254         .description = "em_profile_id",
22255         .field_bit_size = 10,
22256         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
22257         .result_operand = {
22258                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
22259                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
22260                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
22261                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22262         },
22263         /* class_tid: 22, wh_plus, table: profile_tcam_0 */
22264         {
22265         .description = "wc_key_id",
22266         .field_bit_size = 4,
22267         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22268         },
22269         {
22270         .description = "wc_profile_id",
22271         .field_bit_size = 8,
22272         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22273         },
22274         {
22275         .description = "wc_search_en",
22276         .field_bit_size = 1,
22277         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22278         },
22279         {
22280         .description = "em_key_mask",
22281         .field_bit_size = 10,
22282         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
22283         .result_operand = {
22284                 (0x00f9 >> 8) & 0xff,
22285                 0x00f9 & 0xff,
22286                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
22287                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22288         },
22289         {
22290         .description = "em_key_id",
22291         .field_bit_size = 5,
22292         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
22293         .result_operand = {0x19, 0x00, 0x00, 0x00, 0x00, 0x00,
22294                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22295         },
22296         {
22297         .description = "em_profile_id",
22298         .field_bit_size = 8,
22299         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
22300         .result_operand = {
22301                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
22302                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
22303                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
22304                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22305         },
22306         {
22307         .description = "em_search_en",
22308         .field_bit_size = 1,
22309         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
22310         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
22311                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22312         },
22313         {
22314         .description = "pl_byp_lkup_en",
22315         .field_bit_size = 1,
22316         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22317         },
22318         /* class_tid: 22, wh_plus, table: ext_em_0 */
22319         {
22320         .description = "act_rec_ptr",
22321         .field_bit_size = 33,
22322         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
22323         .result_operand = {
22324                 (BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR >> 8) & 0xff,
22325                 BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR & 0xff,
22326                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
22327                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22328         },
22329         {
22330         .description = "ext_flow_ctr",
22331         .field_bit_size = 1,
22332         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
22333         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
22334                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22335         },
22336         {
22337         .description = "act_rec_int",
22338         .field_bit_size = 1,
22339         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22340         },
22341         {
22342         .description = "act_rec_size",
22343         .field_bit_size = 5,
22344         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
22345         .result_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,
22346                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22347         },
22348         {
22349         .description = "key_size",
22350         .field_bit_size = 9,
22351         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
22352         .result_operand = {
22353                 (0x0185 >> 8) & 0xff,
22354                 0x0185 & 0xff,
22355                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
22356                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22357         },
22358         {
22359         .description = "reserved",
22360         .field_bit_size = 11,
22361         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22362         },
22363         {
22364         .description = "strength",
22365         .field_bit_size = 2,
22366         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
22367         .result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,
22368                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22369         },
22370         {
22371         .description = "l1_cacheable",
22372         .field_bit_size = 1,
22373         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22374         },
22375         {
22376         .description = "valid",
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         /* class_tid: 22, wh_plus, table: int_em_0 */
22383         {
22384         .description = "act_rec_ptr",
22385         .field_bit_size = 33,
22386         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
22387         .result_operand = {
22388                 (BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR >> 8) & 0xff,
22389                 BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR & 0xff,
22390                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
22391                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22392         },
22393         {
22394         .description = "ext_flow_ctr",
22395         .field_bit_size = 1,
22396         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
22397         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
22398                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22399         },
22400         {
22401         .description = "act_rec_int",
22402         .field_bit_size = 1,
22403         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22404         },
22405         {
22406         .description = "act_rec_size",
22407         .field_bit_size = 5,
22408         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
22409         .result_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,
22410                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22411         },
22412         {
22413         .description = "key_size",
22414         .field_bit_size = 9,
22415         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
22416         .result_operand = {
22417                 (0x0185 >> 8) & 0xff,
22418                 0x0185 & 0xff,
22419                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
22420                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22421         },
22422         {
22423         .description = "reserved",
22424         .field_bit_size = 11,
22425         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22426         },
22427         {
22428         .description = "strength",
22429         .field_bit_size = 2,
22430         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
22431         .result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,
22432                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22433         },
22434         {
22435         .description = "l1_cacheable",
22436         .field_bit_size = 1,
22437         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22438         },
22439         {
22440         .description = "valid",
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         /* class_tid: 23, wh_plus, table: l2_cntxt_cache_0 */
22447         {
22448         .description = "l2_cntxt_id",
22449         .field_bit_size = 10,
22450         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
22451         .result_operand = {
22452                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
22453                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
22454                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
22455                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22456         },
22457         /* class_tid: 23, wh_plus, table: l2_cntxt_tcam_0 */
22458         {
22459         .description = "l2_cntxt_id",
22460         .field_bit_size = 10,
22461         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
22462         .result_operand = {
22463                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
22464                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
22465                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
22466                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22467         },
22468         {
22469         .description = "prof_func_id",
22470         .field_bit_size = 7,
22471         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
22472         .result_operand = {
22473                 (BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID >> 8) & 0xff,
22474                 BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID & 0xff,
22475                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
22476                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22477         },
22478         {
22479         .description = "l2_byp_lkup_en",
22480         .field_bit_size = 1,
22481         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22482         },
22483         {
22484         .description = "parif",
22485         .field_bit_size = 4,
22486         .result_opcode = BNXT_ULP_MAPPER_OPC_IF_COMP_FIELD_THEN_CF_ELSE_CF,
22487         .result_operand = {
22488                 (BNXT_ULP_CF_IDX_MATCH_PORT_IS_VFREP >> 8) & 0xff,
22489                 BNXT_ULP_CF_IDX_MATCH_PORT_IS_VFREP & 0xff,
22490                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
22491                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
22492         .result_operand_true = {
22493                 (BNXT_ULP_CF_IDX_LOOPBACK_PARIF >> 8) & 0xff,
22494                 BNXT_ULP_CF_IDX_LOOPBACK_PARIF & 0xff,
22495                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
22496                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
22497         .result_operand_false = {
22498                 (BNXT_ULP_CF_IDX_DRV_FUNC_PARIF >> 8) & 0xff,
22499                 BNXT_ULP_CF_IDX_DRV_FUNC_PARIF & 0xff,
22500                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
22501                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22502         },
22503         {
22504         .description = "allowed_pri",
22505         .field_bit_size = 8,
22506         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22507         },
22508         {
22509         .description = "default_pri",
22510         .field_bit_size = 3,
22511         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22512         },
22513         {
22514         .description = "allowed_tpid",
22515         .field_bit_size = 6,
22516         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22517         },
22518         {
22519         .description = "default_tpid",
22520         .field_bit_size = 3,
22521         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22522         },
22523         {
22524         .description = "bd_act_en",
22525         .field_bit_size = 1,
22526         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22527         },
22528         {
22529         .description = "sp_rec_ptr",
22530         .field_bit_size = 16,
22531         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
22532         .result_operand = {
22533                 (BNXT_ULP_REGFILE_INDEX_MAIN_SP_PTR >> 8) & 0xff,
22534                 BNXT_ULP_REGFILE_INDEX_MAIN_SP_PTR & 0xff,
22535                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
22536                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22537         },
22538         {
22539         .description = "byp_sp_lkup",
22540         .field_bit_size = 1,
22541         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
22542         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
22543                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22544         },
22545         {
22546         .description = "pri_anti_spoof_ctl",
22547         .field_bit_size = 2,
22548         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22549         },
22550         {
22551         .description = "tpid_anti_spoof_ctl",
22552         .field_bit_size = 2,
22553         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22554         },
22555         /* class_tid: 23, wh_plus, table: profile_tcam_cache_0 */
22556         {
22557         .description = "em_profile_id",
22558         .field_bit_size = 10,
22559         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
22560         .result_operand = {
22561                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
22562                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
22563                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
22564                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22565         },
22566         /* class_tid: 23, wh_plus, table: profile_tcam_0 */
22567         {
22568         .description = "wc_key_id",
22569         .field_bit_size = 4,
22570         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22571         },
22572         {
22573         .description = "wc_profile_id",
22574         .field_bit_size = 8,
22575         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22576         },
22577         {
22578         .description = "wc_search_en",
22579         .field_bit_size = 1,
22580         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22581         },
22582         {
22583         .description = "em_key_mask",
22584         .field_bit_size = 10,
22585         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
22586         .result_operand = {
22587                 (0x00f9 >> 8) & 0xff,
22588                 0x00f9 & 0xff,
22589                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
22590                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22591         },
22592         {
22593         .description = "em_key_id",
22594         .field_bit_size = 5,
22595         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
22596         .result_operand = {0x19, 0x00, 0x00, 0x00, 0x00, 0x00,
22597                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22598         },
22599         {
22600         .description = "em_profile_id",
22601         .field_bit_size = 8,
22602         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
22603         .result_operand = {
22604                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
22605                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
22606                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
22607                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22608         },
22609         {
22610         .description = "em_search_en",
22611         .field_bit_size = 1,
22612         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
22613         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
22614                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22615         },
22616         {
22617         .description = "pl_byp_lkup_en",
22618         .field_bit_size = 1,
22619         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22620         },
22621         /* class_tid: 23, wh_plus, table: ext_em_0 */
22622         {
22623         .description = "act_rec_ptr",
22624         .field_bit_size = 33,
22625         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
22626         .result_operand = {
22627                 (BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR >> 8) & 0xff,
22628                 BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR & 0xff,
22629                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
22630                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22631         },
22632         {
22633         .description = "ext_flow_ctr",
22634         .field_bit_size = 1,
22635         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
22636         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
22637                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22638         },
22639         {
22640         .description = "act_rec_int",
22641         .field_bit_size = 1,
22642         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22643         },
22644         {
22645         .description = "act_rec_size",
22646         .field_bit_size = 5,
22647         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
22648         .result_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,
22649                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22650         },
22651         {
22652         .description = "key_size",
22653         .field_bit_size = 9,
22654         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
22655         .result_operand = {
22656                 (0x0185 >> 8) & 0xff,
22657                 0x0185 & 0xff,
22658                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
22659                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22660         },
22661         {
22662         .description = "reserved",
22663         .field_bit_size = 11,
22664         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22665         },
22666         {
22667         .description = "strength",
22668         .field_bit_size = 2,
22669         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
22670         .result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,
22671                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22672         },
22673         {
22674         .description = "l1_cacheable",
22675         .field_bit_size = 1,
22676         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22677         },
22678         {
22679         .description = "valid",
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         /* class_tid: 23, wh_plus, table: int_em_0 */
22686         {
22687         .description = "act_rec_ptr",
22688         .field_bit_size = 33,
22689         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
22690         .result_operand = {
22691                 (BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR >> 8) & 0xff,
22692                 BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR & 0xff,
22693                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
22694                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22695         },
22696         {
22697         .description = "ext_flow_ctr",
22698         .field_bit_size = 1,
22699         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
22700         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
22701                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22702         },
22703         {
22704         .description = "act_rec_int",
22705         .field_bit_size = 1,
22706         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22707         },
22708         {
22709         .description = "act_rec_size",
22710         .field_bit_size = 5,
22711         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
22712         .result_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,
22713                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22714         },
22715         {
22716         .description = "key_size",
22717         .field_bit_size = 9,
22718         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
22719         .result_operand = {
22720                 (0x0185 >> 8) & 0xff,
22721                 0x0185 & 0xff,
22722                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
22723                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22724         },
22725         {
22726         .description = "reserved",
22727         .field_bit_size = 11,
22728         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22729         },
22730         {
22731         .description = "strength",
22732         .field_bit_size = 2,
22733         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
22734         .result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,
22735                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22736         },
22737         {
22738         .description = "l1_cacheable",
22739         .field_bit_size = 1,
22740         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22741         },
22742         {
22743         .description = "valid",
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         /* class_tid: 24, wh_plus, table: l2_cntxt_tcam_0 */
22750         {
22751         .description = "l2_cntxt_id",
22752         .field_bit_size = 10,
22753         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
22754         .result_operand = {
22755                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
22756                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
22757                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
22758                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22759         },
22760         {
22761         .description = "prof_func_id",
22762         .field_bit_size = 7,
22763         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
22764         .result_operand = {
22765                 (BNXT_ULP_GLB_REGFILE_INDEX_L2_PROF_FUNC_ID >> 8) & 0xff,
22766                 BNXT_ULP_GLB_REGFILE_INDEX_L2_PROF_FUNC_ID & 0xff,
22767                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
22768                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22769         },
22770         {
22771         .description = "l2_byp_lkup_en",
22772         .field_bit_size = 1,
22773         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22774         },
22775         {
22776         .description = "parif",
22777         .field_bit_size = 4,
22778         .result_opcode = BNXT_ULP_MAPPER_OPC_IF_COMP_FIELD_THEN_CF_ELSE_CF,
22779         .result_operand = {
22780                 (BNXT_ULP_CF_IDX_MATCH_PORT_IS_VFREP >> 8) & 0xff,
22781                 BNXT_ULP_CF_IDX_MATCH_PORT_IS_VFREP & 0xff,
22782                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
22783                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
22784         .result_operand_true = {
22785                 (BNXT_ULP_CF_IDX_LOOPBACK_PARIF >> 8) & 0xff,
22786                 BNXT_ULP_CF_IDX_LOOPBACK_PARIF & 0xff,
22787                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
22788                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
22789         .result_operand_false = {
22790                 (BNXT_ULP_CF_IDX_DRV_FUNC_PARIF >> 8) & 0xff,
22791                 BNXT_ULP_CF_IDX_DRV_FUNC_PARIF & 0xff,
22792                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
22793                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22794         },
22795         {
22796         .description = "allowed_pri",
22797         .field_bit_size = 8,
22798         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22799         },
22800         {
22801         .description = "default_pri",
22802         .field_bit_size = 3,
22803         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22804         },
22805         {
22806         .description = "allowed_tpid",
22807         .field_bit_size = 6,
22808         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22809         },
22810         {
22811         .description = "default_tpid",
22812         .field_bit_size = 3,
22813         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22814         },
22815         {
22816         .description = "bd_act_en",
22817         .field_bit_size = 1,
22818         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22819         },
22820         {
22821         .description = "sp_rec_ptr",
22822         .field_bit_size = 16,
22823         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
22824         .result_operand = {
22825                 (BNXT_ULP_REGFILE_INDEX_MAIN_SP_PTR >> 8) & 0xff,
22826                 BNXT_ULP_REGFILE_INDEX_MAIN_SP_PTR & 0xff,
22827                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
22828                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22829         },
22830         {
22831         .description = "byp_sp_lkup",
22832         .field_bit_size = 1,
22833         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
22834         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
22835                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22836         },
22837         {
22838         .description = "pri_anti_spoof_ctl",
22839         .field_bit_size = 2,
22840         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22841         },
22842         {
22843         .description = "tpid_anti_spoof_ctl",
22844         .field_bit_size = 2,
22845         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22846         },
22847         /* class_tid: 24, wh_plus, table: profile_tcam_cache_0 */
22848         {
22849         .description = "em_profile_id",
22850         .field_bit_size = 10,
22851         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
22852         .result_operand = {
22853                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
22854                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
22855                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
22856                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22857         },
22858         /* class_tid: 24, wh_plus, table: profile_tcam_0 */
22859         {
22860         .description = "wc_key_id",
22861         .field_bit_size = 4,
22862         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22863         },
22864         {
22865         .description = "wc_profile_id",
22866         .field_bit_size = 8,
22867         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22868         },
22869         {
22870         .description = "wc_search_en",
22871         .field_bit_size = 1,
22872         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22873         },
22874         {
22875         .description = "em_key_mask",
22876         .field_bit_size = 10,
22877         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
22878         .result_operand = {
22879                 (0x0003 >> 8) & 0xff,
22880                 0x0003 & 0xff,
22881                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
22882                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22883         },
22884         {
22885         .description = "em_key_id",
22886         .field_bit_size = 5,
22887         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
22888         .result_operand = {0x0c, 0x00, 0x00, 0x00, 0x00, 0x00,
22889                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22890         },
22891         {
22892         .description = "em_profile_id",
22893         .field_bit_size = 8,
22894         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
22895         .result_operand = {
22896                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
22897                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
22898                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
22899                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22900         },
22901         {
22902         .description = "em_search_en",
22903         .field_bit_size = 1,
22904         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
22905         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
22906                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22907         },
22908         {
22909         .description = "pl_byp_lkup_en",
22910         .field_bit_size = 1,
22911         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22912         },
22913         /* class_tid: 24, wh_plus, table: ext_em_0 */
22914         {
22915         .description = "act_rec_ptr",
22916         .field_bit_size = 33,
22917         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
22918         .result_operand = {
22919                 (BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR >> 8) & 0xff,
22920                 BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR & 0xff,
22921                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
22922                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22923         },
22924         {
22925         .description = "ext_flow_ctr",
22926         .field_bit_size = 1,
22927         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
22928         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
22929                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22930         },
22931         {
22932         .description = "act_rec_int",
22933         .field_bit_size = 1,
22934         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22935         },
22936         {
22937         .description = "act_rec_size",
22938         .field_bit_size = 5,
22939         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
22940         .result_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,
22941                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22942         },
22943         {
22944         .description = "key_size",
22945         .field_bit_size = 9,
22946         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
22947         .result_operand = {
22948                 (0x0061 >> 8) & 0xff,
22949                 0x0061 & 0xff,
22950                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
22951                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22952         },
22953         {
22954         .description = "reserved",
22955         .field_bit_size = 11,
22956         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22957         },
22958         {
22959         .description = "strength",
22960         .field_bit_size = 2,
22961         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
22962         .result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,
22963                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22964         },
22965         {
22966         .description = "l1_cacheable",
22967         .field_bit_size = 1,
22968         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22969         },
22970         {
22971         .description = "valid",
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         /* class_tid: 24, wh_plus, table: int_em_0 */
22978         {
22979         .description = "act_rec_ptr",
22980         .field_bit_size = 33,
22981         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
22982         .result_operand = {
22983                 (BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR >> 8) & 0xff,
22984                 BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR & 0xff,
22985                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
22986                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22987         },
22988         {
22989         .description = "ext_flow_ctr",
22990         .field_bit_size = 1,
22991         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
22992         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
22993                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22994         },
22995         {
22996         .description = "act_rec_int",
22997         .field_bit_size = 1,
22998         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22999         },
23000         {
23001         .description = "act_rec_size",
23002         .field_bit_size = 5,
23003         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
23004         .result_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,
23005                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
23006         },
23007         {
23008         .description = "key_size",
23009         .field_bit_size = 9,
23010         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
23011         .result_operand = {
23012                 (0x0061 >> 8) & 0xff,
23013                 0x0061 & 0xff,
23014                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
23015                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
23016         },
23017         {
23018         .description = "reserved",
23019         .field_bit_size = 11,
23020         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
23021         },
23022         {
23023         .description = "strength",
23024         .field_bit_size = 2,
23025         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
23026         .result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,
23027                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
23028         },
23029         {
23030         .description = "l1_cacheable",
23031         .field_bit_size = 1,
23032         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
23033         },
23034         {
23035         .description = "valid",
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         /* class_tid: 25, wh_plus, table: l2_cntxt_tcam_0 */
23042         {
23043         .description = "l2_cntxt_id",
23044         .field_bit_size = 10,
23045         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
23046         .result_operand = {
23047                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
23048                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
23049                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
23050                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
23051         },
23052         {
23053         .description = "prof_func_id",
23054         .field_bit_size = 7,
23055         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
23056         .result_operand = {
23057                 (BNXT_ULP_GLB_REGFILE_INDEX_L2_PROF_FUNC_ID >> 8) & 0xff,
23058                 BNXT_ULP_GLB_REGFILE_INDEX_L2_PROF_FUNC_ID & 0xff,
23059                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
23060                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
23061         },
23062         {
23063         .description = "l2_byp_lkup_en",
23064         .field_bit_size = 1,
23065         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
23066         },
23067         {
23068         .description = "parif",
23069         .field_bit_size = 4,
23070         .result_opcode = BNXT_ULP_MAPPER_OPC_IF_COMP_FIELD_THEN_CF_ELSE_CF,
23071         .result_operand = {
23072                 (BNXT_ULP_CF_IDX_MATCH_PORT_IS_VFREP >> 8) & 0xff,
23073                 BNXT_ULP_CF_IDX_MATCH_PORT_IS_VFREP & 0xff,
23074                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
23075                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
23076         .result_operand_true = {
23077                 (BNXT_ULP_CF_IDX_LOOPBACK_PARIF >> 8) & 0xff,
23078                 BNXT_ULP_CF_IDX_LOOPBACK_PARIF & 0xff,
23079                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
23080                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
23081         .result_operand_false = {
23082                 (BNXT_ULP_CF_IDX_DRV_FUNC_PARIF >> 8) & 0xff,
23083                 BNXT_ULP_CF_IDX_DRV_FUNC_PARIF & 0xff,
23084                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
23085                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
23086         },
23087         {
23088         .description = "allowed_pri",
23089         .field_bit_size = 8,
23090         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
23091         },
23092         {
23093         .description = "default_pri",
23094         .field_bit_size = 3,
23095         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
23096         },
23097         {
23098         .description = "allowed_tpid",
23099         .field_bit_size = 6,
23100         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
23101         },
23102         {
23103         .description = "default_tpid",
23104         .field_bit_size = 3,
23105         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
23106         },
23107         {
23108         .description = "bd_act_en",
23109         .field_bit_size = 1,
23110         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
23111         },
23112         {
23113         .description = "sp_rec_ptr",
23114         .field_bit_size = 16,
23115         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
23116         .result_operand = {
23117                 (BNXT_ULP_REGFILE_INDEX_MAIN_SP_PTR >> 8) & 0xff,
23118                 BNXT_ULP_REGFILE_INDEX_MAIN_SP_PTR & 0xff,
23119                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
23120                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
23121         },
23122         {
23123         .description = "byp_sp_lkup",
23124         .field_bit_size = 1,
23125         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
23126         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
23127                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
23128         },
23129         {
23130         .description = "pri_anti_spoof_ctl",
23131         .field_bit_size = 2,
23132         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
23133         },
23134         {
23135         .description = "tpid_anti_spoof_ctl",
23136         .field_bit_size = 2,
23137         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
23138         },
23139         /* class_tid: 25, wh_plus, table: profile_tcam_cache_0 */
23140         {
23141         .description = "em_profile_id",
23142         .field_bit_size = 10,
23143         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
23144         .result_operand = {
23145                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
23146                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
23147                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
23148                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
23149         },
23150         /* class_tid: 25, wh_plus, table: profile_tcam_0 */
23151         {
23152         .description = "wc_key_id",
23153         .field_bit_size = 4,
23154         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
23155         },
23156         {
23157         .description = "wc_profile_id",
23158         .field_bit_size = 8,
23159         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
23160         },
23161         {
23162         .description = "wc_search_en",
23163         .field_bit_size = 1,
23164         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
23165         },
23166         {
23167         .description = "em_key_mask",
23168         .field_bit_size = 10,
23169         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
23170         .result_operand = {
23171                 (0x0003 >> 8) & 0xff,
23172                 0x0003 & 0xff,
23173                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
23174                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
23175         },
23176         {
23177         .description = "em_key_id",
23178         .field_bit_size = 5,
23179         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
23180         .result_operand = {0x0c, 0x00, 0x00, 0x00, 0x00, 0x00,
23181                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
23182         },
23183         {
23184         .description = "em_profile_id",
23185         .field_bit_size = 8,
23186         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
23187         .result_operand = {
23188                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
23189                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
23190                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
23191                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
23192         },
23193         {
23194         .description = "em_search_en",
23195         .field_bit_size = 1,
23196         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
23197         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
23198                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
23199         },
23200         {
23201         .description = "pl_byp_lkup_en",
23202         .field_bit_size = 1,
23203         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
23204         },
23205         /* class_tid: 25, wh_plus, table: ext_em_0 */
23206         {
23207         .description = "act_rec_ptr",
23208         .field_bit_size = 33,
23209         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
23210         .result_operand = {
23211                 (BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR >> 8) & 0xff,
23212                 BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR & 0xff,
23213                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
23214                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
23215         },
23216         {
23217         .description = "ext_flow_ctr",
23218         .field_bit_size = 1,
23219         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
23220         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
23221                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
23222         },
23223         {
23224         .description = "act_rec_int",
23225         .field_bit_size = 1,
23226         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
23227         },
23228         {
23229         .description = "act_rec_size",
23230         .field_bit_size = 5,
23231         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
23232         .result_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,
23233                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
23234         },
23235         {
23236         .description = "key_size",
23237         .field_bit_size = 9,
23238         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
23239         .result_operand = {
23240                 (0x0061 >> 8) & 0xff,
23241                 0x0061 & 0xff,
23242                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
23243                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
23244         },
23245         {
23246         .description = "reserved",
23247         .field_bit_size = 11,
23248         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
23249         },
23250         {
23251         .description = "strength",
23252         .field_bit_size = 2,
23253         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
23254         .result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,
23255                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
23256         },
23257         {
23258         .description = "l1_cacheable",
23259         .field_bit_size = 1,
23260         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
23261         },
23262         {
23263         .description = "valid",
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         /* class_tid: 25, wh_plus, table: int_em_0 */
23270         {
23271         .description = "act_rec_ptr",
23272         .field_bit_size = 33,
23273         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
23274         .result_operand = {
23275                 (BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR >> 8) & 0xff,
23276                 BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR & 0xff,
23277                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
23278                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
23279         },
23280         {
23281         .description = "ext_flow_ctr",
23282         .field_bit_size = 1,
23283         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
23284         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
23285                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
23286         },
23287         {
23288         .description = "act_rec_int",
23289         .field_bit_size = 1,
23290         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
23291         },
23292         {
23293         .description = "act_rec_size",
23294         .field_bit_size = 5,
23295         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
23296         .result_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,
23297                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
23298         },
23299         {
23300         .description = "key_size",
23301         .field_bit_size = 9,
23302         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
23303         .result_operand = {
23304                 (0x0061 >> 8) & 0xff,
23305                 0x0061 & 0xff,
23306                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
23307                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
23308         },
23309         {
23310         .description = "reserved",
23311         .field_bit_size = 11,
23312         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
23313         },
23314         {
23315         .description = "strength",
23316         .field_bit_size = 2,
23317         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
23318         .result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,
23319                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
23320         },
23321         {
23322         .description = "l1_cacheable",
23323         .field_bit_size = 1,
23324         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
23325         },
23326         {
23327         .description = "valid",
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
23335 struct bnxt_ulp_mapper_ident_info ulp_wh_plus_class_ident_list[] = {
23336         /* class_tid: 1, wh_plus, table: l2_cntxt_cache_0 */
23337         {
23338         .description = "l2_cntxt_id",
23339         .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,
23340         .ident_type = TF_IDENT_TYPE_L2_CTXT_HIGH,
23341         .regfile_idx = BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0,
23342         .ident_bit_size = 10,
23343         .ident_bit_pos = 0
23344         },
23345         /* class_tid: 2, wh_plus, table: l2_cntxt_cache_0 */
23346         {
23347         .description = "l2_cntxt_id",
23348         .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,
23349         .ident_type = TF_IDENT_TYPE_L2_CTXT_HIGH,
23350         .regfile_idx = BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0,
23351         .ident_bit_size = 10,
23352         .ident_bit_pos = 0
23353         },
23354         /* class_tid: 4, wh_plus, table: egr_l2_cntxt_cache_0 */
23355         {
23356         .description = "l2_cntxt_id",
23357         .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,
23358         .ident_type = TF_IDENT_TYPE_L2_CTXT_HIGH,
23359         .regfile_idx = BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0,
23360         .ident_bit_size = 10,
23361         .ident_bit_pos = 0
23362         },
23363         /* class_tid: 6, wh_plus, table: l2_cntxt_tcam_0 */
23364         {
23365         .description = "l2_cntxt_id",
23366         .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,
23367         .ident_type = TF_IDENT_TYPE_L2_CTXT_HIGH,
23368         .regfile_idx = BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0,
23369         .ident_bit_size = 10,
23370         .ident_bit_pos = 0
23371         },
23372         /* class_tid: 6, wh_plus, table: profile_tcam_cache_0 */
23373         {
23374         .description = "em_profile_id",
23375         .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,
23376         .ident_type = TF_IDENT_TYPE_EM_PROF,
23377         .regfile_idx = BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0,
23378         .ident_bit_size = 10,
23379         .ident_bit_pos = 0
23380         },
23381         /* class_tid: 7, wh_plus, table: l2_cntxt_tcam_0 */
23382         {
23383         .description = "l2_cntxt_id",
23384         .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,
23385         .ident_type = TF_IDENT_TYPE_L2_CTXT_HIGH,
23386         .regfile_idx = BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0,
23387         .ident_bit_size = 10,
23388         .ident_bit_pos = 0
23389         },
23390         /* class_tid: 7, wh_plus, table: profile_tcam_cache_0 */
23391         {
23392         .description = "em_profile_id",
23393         .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,
23394         .ident_type = TF_IDENT_TYPE_EM_PROF,
23395         .regfile_idx = BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0,
23396         .ident_bit_size = 10,
23397         .ident_bit_pos = 0
23398         },
23399         /* class_tid: 8, wh_plus, table: l2_cntxt_cache_0 */
23400         {
23401         .description = "l2_cntxt_id",
23402         .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,
23403         .ident_type = TF_IDENT_TYPE_L2_CTXT_HIGH,
23404         .regfile_idx = BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0,
23405         .ident_bit_size = 10,
23406         .ident_bit_pos = 0
23407         },
23408         /* class_tid: 8, wh_plus, table: profile_tcam_cache_0 */
23409         {
23410         .description = "em_profile_id",
23411         .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,
23412         .ident_type = TF_IDENT_TYPE_EM_PROF,
23413         .regfile_idx = BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0,
23414         .ident_bit_size = 10,
23415         .ident_bit_pos = 0
23416         },
23417         /* class_tid: 9, wh_plus, table: l2_cntxt_cache_0 */
23418         {
23419         .description = "l2_cntxt_id",
23420         .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,
23421         .ident_type = TF_IDENT_TYPE_L2_CTXT_HIGH,
23422         .regfile_idx = BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0,
23423         .ident_bit_size = 10,
23424         .ident_bit_pos = 0
23425         },
23426         /* class_tid: 9, wh_plus, table: profile_tcam_cache_0 */
23427         {
23428         .description = "em_profile_id",
23429         .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,
23430         .ident_type = TF_IDENT_TYPE_EM_PROF,
23431         .regfile_idx = BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0,
23432         .ident_bit_size = 10,
23433         .ident_bit_pos = 0
23434         },
23435         /* class_tid: 10, wh_plus, table: l2_cntxt_cache_0 */
23436         {
23437         .description = "l2_cntxt_id",
23438         .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,
23439         .ident_type = TF_IDENT_TYPE_L2_CTXT_HIGH,
23440         .regfile_idx = BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0,
23441         .ident_bit_size = 10,
23442         .ident_bit_pos = 0
23443         },
23444         /* class_tid: 10, wh_plus, table: profile_tcam_cache_0 */
23445         {
23446         .description = "em_profile_id",
23447         .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,
23448         .ident_type = TF_IDENT_TYPE_EM_PROF,
23449         .regfile_idx = BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0,
23450         .ident_bit_size = 10,
23451         .ident_bit_pos = 0
23452         },
23453         /* class_tid: 11, wh_plus, table: l2_cntxt_cache_0 */
23454         {
23455         .description = "l2_cntxt_id",
23456         .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,
23457         .ident_type = TF_IDENT_TYPE_L2_CTXT_HIGH,
23458         .regfile_idx = BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0,
23459         .ident_bit_size = 10,
23460         .ident_bit_pos = 0
23461         },
23462         /* class_tid: 11, wh_plus, table: profile_tcam_cache_0 */
23463         {
23464         .description = "em_profile_id",
23465         .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,
23466         .ident_type = TF_IDENT_TYPE_EM_PROF,
23467         .regfile_idx = BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0,
23468         .ident_bit_size = 10,
23469         .ident_bit_pos = 0
23470         },
23471         /* class_tid: 12, wh_plus, table: l2_cntxt_tcam_0 */
23472         {
23473         .description = "l2_cntxt_id",
23474         .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,
23475         .ident_type = TF_IDENT_TYPE_L2_CTXT_HIGH,
23476         .regfile_idx = BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0,
23477         .ident_bit_size = 10,
23478         .ident_bit_pos = 0
23479         },
23480         /* class_tid: 12, wh_plus, table: profile_tcam_cache_0 */
23481         {
23482         .description = "em_profile_id",
23483         .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,
23484         .ident_type = TF_IDENT_TYPE_EM_PROF,
23485         .regfile_idx = BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0,
23486         .ident_bit_size = 10,
23487         .ident_bit_pos = 0
23488         },
23489         /* class_tid: 13, wh_plus, table: l2_cntxt_tcam_0 */
23490         {
23491         .description = "l2_cntxt_id",
23492         .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,
23493         .ident_type = TF_IDENT_TYPE_L2_CTXT_HIGH,
23494         .regfile_idx = BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0,
23495         .ident_bit_size = 10,
23496         .ident_bit_pos = 0
23497         },
23498         /* class_tid: 13, wh_plus, table: profile_tcam_cache_0 */
23499         {
23500         .description = "em_profile_id",
23501         .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,
23502         .ident_type = TF_IDENT_TYPE_EM_PROF,
23503         .regfile_idx = BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0,
23504         .ident_bit_size = 10,
23505         .ident_bit_pos = 0
23506         },
23507         /* class_tid: 14, wh_plus, table: l2_cntxt_tcam_0 */
23508         {
23509         .description = "l2_cntxt_id",
23510         .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,
23511         .ident_type = TF_IDENT_TYPE_L2_CTXT_HIGH,
23512         .regfile_idx = BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0,
23513         .ident_bit_size = 10,
23514         .ident_bit_pos = 0
23515         },
23516         /* class_tid: 14, wh_plus, table: profile_tcam_cache_0 */
23517         {
23518         .description = "em_profile_id",
23519         .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,
23520         .ident_type = TF_IDENT_TYPE_EM_PROF,
23521         .regfile_idx = BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0,
23522         .ident_bit_size = 10,
23523         .ident_bit_pos = 0
23524         },
23525         /* class_tid: 15, wh_plus, table: l2_cntxt_tcam_0 */
23526         {
23527         .description = "l2_cntxt_id",
23528         .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,
23529         .ident_type = TF_IDENT_TYPE_L2_CTXT_HIGH,
23530         .regfile_idx = BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0,
23531         .ident_bit_size = 10,
23532         .ident_bit_pos = 0
23533         },
23534         /* class_tid: 15, wh_plus, table: profile_tcam_cache_0 */
23535         {
23536         .description = "em_profile_id",
23537         .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,
23538         .ident_type = TF_IDENT_TYPE_EM_PROF,
23539         .regfile_idx = BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0,
23540         .ident_bit_size = 10,
23541         .ident_bit_pos = 0
23542         },
23543         /* class_tid: 16, wh_plus, table: l2_cntxt_tcam_0 */
23544         {
23545         .description = "l2_cntxt_id",
23546         .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,
23547         .ident_type = TF_IDENT_TYPE_L2_CTXT_HIGH,
23548         .regfile_idx = BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0,
23549         .ident_bit_size = 10,
23550         .ident_bit_pos = 0
23551         },
23552         /* class_tid: 16, wh_plus, table: profile_tcam_cache_0 */
23553         {
23554         .description = "em_profile_id",
23555         .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,
23556         .ident_type = TF_IDENT_TYPE_EM_PROF,
23557         .regfile_idx = BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0,
23558         .ident_bit_size = 10,
23559         .ident_bit_pos = 0
23560         },
23561         /* class_tid: 17, wh_plus, table: l2_cntxt_tcam_0 */
23562         {
23563         .description = "l2_cntxt_id",
23564         .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,
23565         .ident_type = TF_IDENT_TYPE_L2_CTXT_HIGH,
23566         .regfile_idx = BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0,
23567         .ident_bit_size = 10,
23568         .ident_bit_pos = 0
23569         },
23570         /* class_tid: 17, wh_plus, table: profile_tcam_cache_0 */
23571         {
23572         .description = "em_profile_id",
23573         .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,
23574         .ident_type = TF_IDENT_TYPE_EM_PROF,
23575         .regfile_idx = BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0,
23576         .ident_bit_size = 10,
23577         .ident_bit_pos = 0
23578         },
23579         /* class_tid: 18, wh_plus, table: l2_cntxt_tcam_0 */
23580         {
23581         .description = "l2_cntxt_id",
23582         .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,
23583         .ident_type = TF_IDENT_TYPE_L2_CTXT_HIGH,
23584         .regfile_idx = BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0,
23585         .ident_bit_size = 10,
23586         .ident_bit_pos = 0
23587         },
23588         /* class_tid: 18, wh_plus, table: profile_tcam_cache_0 */
23589         {
23590         .description = "em_profile_id",
23591         .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,
23592         .ident_type = TF_IDENT_TYPE_EM_PROF,
23593         .regfile_idx = BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0,
23594         .ident_bit_size = 10,
23595         .ident_bit_pos = 0
23596         },
23597         {
23598         .description = "em_profile_id",
23599         .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,
23600         .ident_type = TF_IDENT_TYPE_EM_PROF,
23601         .regfile_idx = BNXT_ULP_REGFILE_INDEX_WC_PROFILE_ID_0,
23602         .ident_bit_size = 10,
23603         .ident_bit_pos = 0
23604         },
23605         /* class_tid: 19, wh_plus, table: l2_cntxt_tcam_0 */
23606         {
23607         .description = "l2_cntxt_id",
23608         .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,
23609         .ident_type = TF_IDENT_TYPE_L2_CTXT_HIGH,
23610         .regfile_idx = BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0,
23611         .ident_bit_size = 10,
23612         .ident_bit_pos = 0
23613         },
23614         /* class_tid: 19, wh_plus, table: profile_tcam_cache_0 */
23615         {
23616         .description = "em_profile_id",
23617         .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,
23618         .ident_type = TF_IDENT_TYPE_EM_PROF,
23619         .regfile_idx = BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0,
23620         .ident_bit_size = 10,
23621         .ident_bit_pos = 0
23622         },
23623         {
23624         .description = "em_profile_id",
23625         .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,
23626         .ident_type = TF_IDENT_TYPE_EM_PROF,
23627         .regfile_idx = BNXT_ULP_REGFILE_INDEX_WC_PROFILE_ID_0,
23628         .ident_bit_size = 10,
23629         .ident_bit_pos = 0
23630         },
23631         /* class_tid: 20, wh_plus, table: l2_cntxt_cache_0 */
23632         {
23633         .description = "l2_cntxt_id",
23634         .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,
23635         .ident_type = TF_IDENT_TYPE_L2_CTXT_HIGH,
23636         .regfile_idx = BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0,
23637         .ident_bit_size = 10,
23638         .ident_bit_pos = 0
23639         },
23640         /* class_tid: 20, wh_plus, table: profile_tcam_cache_0 */
23641         {
23642         .description = "em_profile_id",
23643         .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,
23644         .ident_type = TF_IDENT_TYPE_EM_PROF,
23645         .regfile_idx = BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0,
23646         .ident_bit_size = 10,
23647         .ident_bit_pos = 0
23648         },
23649         /* class_tid: 21, wh_plus, table: l2_cntxt_cache_0 */
23650         {
23651         .description = "l2_cntxt_id",
23652         .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,
23653         .ident_type = TF_IDENT_TYPE_L2_CTXT_HIGH,
23654         .regfile_idx = BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0,
23655         .ident_bit_size = 10,
23656         .ident_bit_pos = 0
23657         },
23658         /* class_tid: 21, wh_plus, table: profile_tcam_cache_0 */
23659         {
23660         .description = "em_profile_id",
23661         .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,
23662         .ident_type = TF_IDENT_TYPE_EM_PROF,
23663         .regfile_idx = BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0,
23664         .ident_bit_size = 10,
23665         .ident_bit_pos = 0
23666         },
23667         /* class_tid: 22, wh_plus, table: l2_cntxt_cache_0 */
23668         {
23669         .description = "l2_cntxt_id",
23670         .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,
23671         .ident_type = TF_IDENT_TYPE_L2_CTXT_HIGH,
23672         .regfile_idx = BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0,
23673         .ident_bit_size = 10,
23674         .ident_bit_pos = 0
23675         },
23676         /* class_tid: 22, wh_plus, table: profile_tcam_cache_0 */
23677         {
23678         .description = "em_profile_id",
23679         .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,
23680         .ident_type = TF_IDENT_TYPE_EM_PROF,
23681         .regfile_idx = BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0,
23682         .ident_bit_size = 10,
23683         .ident_bit_pos = 0
23684         },
23685         /* class_tid: 23, wh_plus, table: l2_cntxt_cache_0 */
23686         {
23687         .description = "l2_cntxt_id",
23688         .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,
23689         .ident_type = TF_IDENT_TYPE_L2_CTXT_HIGH,
23690         .regfile_idx = BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0,
23691         .ident_bit_size = 10,
23692         .ident_bit_pos = 0
23693         },
23694         /* class_tid: 23, wh_plus, table: profile_tcam_cache_0 */
23695         {
23696         .description = "em_profile_id",
23697         .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,
23698         .ident_type = TF_IDENT_TYPE_EM_PROF,
23699         .regfile_idx = BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0,
23700         .ident_bit_size = 10,
23701         .ident_bit_pos = 0
23702         },
23703         /* class_tid: 24, wh_plus, table: l2_cntxt_tcam_0 */
23704         {
23705         .description = "l2_cntxt_id",
23706         .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,
23707         .ident_type = TF_IDENT_TYPE_L2_CTXT_HIGH,
23708         .regfile_idx = BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0,
23709         .ident_bit_size = 10,
23710         .ident_bit_pos = 0
23711         },
23712         /* class_tid: 24, wh_plus, table: profile_tcam_cache_0 */
23713         {
23714         .description = "em_profile_id",
23715         .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,
23716         .ident_type = TF_IDENT_TYPE_EM_PROF,
23717         .regfile_idx = BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0,
23718         .ident_bit_size = 10,
23719         .ident_bit_pos = 0
23720         },
23721         /* class_tid: 25, wh_plus, table: l2_cntxt_tcam_0 */
23722         {
23723         .description = "l2_cntxt_id",
23724         .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,
23725         .ident_type = TF_IDENT_TYPE_L2_CTXT_HIGH,
23726         .regfile_idx = BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0,
23727         .ident_bit_size = 10,
23728         .ident_bit_pos = 0
23729         },
23730         /* class_tid: 25, wh_plus, table: profile_tcam_cache_0 */
23731         {
23732         .description = "em_profile_id",
23733         .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,
23734         .ident_type = TF_IDENT_TYPE_EM_PROF,
23735         .regfile_idx = BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0,
23736         .ident_bit_size = 10,
23737         .ident_bit_pos = 0
23738         }
23739 };