net/bnxt: add port representor and stat templates
[dpdk.git] / drivers / net / bnxt / tf_ulp / ulp_template_db_class.c
1 /* SPDX-License-Identifier: BSD-3-Clause
2  * Copyright(c) 2014-2020 Broadcom
3  * All rights reserved.
4  */
5
6 #include "ulp_template_db_enum.h"
7 #include "ulp_template_db_field.h"
8 #include "ulp_template_struct.h"
9 #include "ulp_rte_parser.h"
10
11 uint16_t ulp_class_sig_tbl[BNXT_ULP_CLASS_SIG_TBL_MAX_SZ] = {
12         [BNXT_ULP_CLASS_HID_0080] = 1,
13         [BNXT_ULP_CLASS_HID_0087] = 2,
14         [BNXT_ULP_CLASS_HID_0000] = 3
15 };
16
17 struct bnxt_ulp_class_match_info ulp_class_match_list[] = {
18         [1] = {
19         .class_hid = BNXT_ULP_CLASS_HID_0080,
20         .hdr_sig = { .bits =
21                 BNXT_ULP_HDR_BIT_O_ETH |
22                 BNXT_ULP_HDR_BIT_O_IPV4 |
23                 BNXT_ULP_HDR_BIT_O_UDP |
24                 BNXT_ULP_FLOW_DIR_BITMASK_ING },
25         .field_sig = { .bits =
26                 BNXT_ULP_HF8_BITMASK_O_IPV4_SRC_ADDR |
27                 BNXT_ULP_HF8_BITMASK_O_IPV4_DST_ADDR |
28                 BNXT_ULP_HF8_BITMASK_O_UDP_SRC_PORT |
29                 BNXT_ULP_HF8_BITMASK_O_UDP_DST_PORT |
30                 BNXT_ULP_MATCH_TYPE_BITMASK_EM },
31         .class_tid = 8,
32         .act_vnic = 0,
33         .wc_pri = 0
34         },
35         [2] = {
36         .class_hid = BNXT_ULP_CLASS_HID_0087,
37         .hdr_sig = { .bits =
38                 BNXT_ULP_HDR_BIT_O_ETH |
39                 BNXT_ULP_HDR_BIT_O_IPV4 |
40                 BNXT_ULP_HDR_BIT_O_UDP |
41                 BNXT_ULP_HDR_BIT_T_VXLAN |
42                 BNXT_ULP_HDR_BIT_I_ETH |
43                 BNXT_ULP_HDR_BIT_I_IPV4 |
44                 BNXT_ULP_HDR_BIT_I_UDP |
45                 BNXT_ULP_FLOW_DIR_BITMASK_ING },
46         .field_sig = { .bits =
47                 BNXT_ULP_HF9_BITMASK_I_IPV4_SRC_ADDR |
48                 BNXT_ULP_HF9_BITMASK_I_IPV4_DST_ADDR |
49                 BNXT_ULP_HF9_BITMASK_I_UDP_SRC_PORT |
50                 BNXT_ULP_HF9_BITMASK_I_UDP_DST_PORT |
51                 BNXT_ULP_MATCH_TYPE_BITMASK_EM },
52         .class_tid = 9,
53         .act_vnic = 0,
54         .wc_pri = 0
55         },
56         [3] = {
57         .class_hid = BNXT_ULP_CLASS_HID_0000,
58         .hdr_sig = { .bits =
59                 BNXT_ULP_HDR_BIT_O_ETH |
60                 BNXT_ULP_HDR_BIT_O_IPV4 |
61                 BNXT_ULP_HDR_BIT_O_UDP |
62                 BNXT_ULP_FLOW_DIR_BITMASK_EGR },
63         .field_sig = { .bits =
64                 BNXT_ULP_HF10_BITMASK_O_IPV4_SRC_ADDR |
65                 BNXT_ULP_HF10_BITMASK_O_IPV4_DST_ADDR |
66                 BNXT_ULP_HF10_BITMASK_O_UDP_SRC_PORT |
67                 BNXT_ULP_HF10_BITMASK_O_UDP_DST_PORT |
68                 BNXT_ULP_MATCH_TYPE_BITMASK_EM },
69         .class_tid = 10,
70         .act_vnic = 0,
71         .wc_pri = 0
72         }
73 };
74
75 struct bnxt_ulp_mapper_tbl_list_info ulp_class_tmpl_list[] = {
76         [((1 << BNXT_ULP_LOG2_MAX_NUM_DEV) |
77                 BNXT_ULP_DEVICE_ID_WH_PLUS)] = {
78         .device_name = BNXT_ULP_DEVICE_ID_WH_PLUS,
79         .num_tbls = 4,
80         .start_tbl_idx = 0,
81         .flow_db_table_type = BNXT_ULP_FDB_TYPE_DEFAULT
82         },
83         [((2 << BNXT_ULP_LOG2_MAX_NUM_DEV) |
84                 BNXT_ULP_DEVICE_ID_WH_PLUS)] = {
85         .device_name = BNXT_ULP_DEVICE_ID_WH_PLUS,
86         .num_tbls = 2,
87         .start_tbl_idx = 4,
88         .flow_db_table_type = BNXT_ULP_FDB_TYPE_DEFAULT
89         },
90         [((3 << BNXT_ULP_LOG2_MAX_NUM_DEV) |
91                 BNXT_ULP_DEVICE_ID_WH_PLUS)] = {
92         .device_name = BNXT_ULP_DEVICE_ID_WH_PLUS,
93         .num_tbls = 6,
94         .start_tbl_idx = 6,
95         .flow_db_table_type = BNXT_ULP_FDB_TYPE_DEFAULT
96         },
97         [((4 << BNXT_ULP_LOG2_MAX_NUM_DEV) |
98                 BNXT_ULP_DEVICE_ID_WH_PLUS)] = {
99         .device_name = BNXT_ULP_DEVICE_ID_WH_PLUS,
100         .num_tbls = 5,
101         .start_tbl_idx = 12,
102         .flow_db_table_type = BNXT_ULP_FDB_TYPE_DEFAULT
103         },
104         [((5 << BNXT_ULP_LOG2_MAX_NUM_DEV) |
105                 BNXT_ULP_DEVICE_ID_WH_PLUS)] = {
106         .device_name = BNXT_ULP_DEVICE_ID_WH_PLUS,
107         .num_tbls = 3,
108         .start_tbl_idx = 17,
109         .flow_db_table_type = BNXT_ULP_FDB_TYPE_DEFAULT
110         },
111         [((6 << BNXT_ULP_LOG2_MAX_NUM_DEV) |
112                 BNXT_ULP_DEVICE_ID_WH_PLUS)] = {
113         .device_name = BNXT_ULP_DEVICE_ID_WH_PLUS,
114         .num_tbls = 3,
115         .start_tbl_idx = 20,
116         .flow_db_table_type = BNXT_ULP_FDB_TYPE_DEFAULT
117         },
118         [((7 << BNXT_ULP_LOG2_MAX_NUM_DEV) |
119                 BNXT_ULP_DEVICE_ID_WH_PLUS)] = {
120         .device_name = BNXT_ULP_DEVICE_ID_WH_PLUS,
121         .num_tbls = 1,
122         .start_tbl_idx = 23,
123         .flow_db_table_type = BNXT_ULP_FDB_TYPE_DEFAULT
124         },
125         [((8 << BNXT_ULP_LOG2_MAX_NUM_DEV) |
126                 BNXT_ULP_DEVICE_ID_WH_PLUS)] = {
127         .device_name = BNXT_ULP_DEVICE_ID_WH_PLUS,
128         .num_tbls = 5,
129         .start_tbl_idx = 24,
130         .flow_db_table_type = BNXT_ULP_FDB_TYPE_REGULAR
131         },
132         [((9 << BNXT_ULP_LOG2_MAX_NUM_DEV) |
133                 BNXT_ULP_DEVICE_ID_WH_PLUS)] = {
134         .device_name = BNXT_ULP_DEVICE_ID_WH_PLUS,
135         .num_tbls = 5,
136         .start_tbl_idx = 29,
137         .flow_db_table_type = BNXT_ULP_FDB_TYPE_REGULAR
138         },
139         [((10 << BNXT_ULP_LOG2_MAX_NUM_DEV) |
140                 BNXT_ULP_DEVICE_ID_WH_PLUS)] = {
141         .device_name = BNXT_ULP_DEVICE_ID_WH_PLUS,
142         .num_tbls = 5,
143         .start_tbl_idx = 34,
144         .flow_db_table_type = BNXT_ULP_FDB_TYPE_REGULAR
145         }
146 };
147
148 struct bnxt_ulp_mapper_tbl_info ulp_class_tbl_list[] = {
149         {
150         .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
151         .resource_type = TF_TBL_TYPE_FULL_ACT_RECORD,
152         .resource_sub_type =
153                 BNXT_ULP_RESOURCE_SUB_TYPE_INDEX_TYPE_NORMAL,
154         .direction = TF_DIR_RX,
155         .result_start_idx = 0,
156         .result_bit_size = 128,
157         .result_num_fields = 26,
158         .encap_num_fields = 0,
159         .mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,
160         .index_opcode = BNXT_ULP_INDEX_OPCODE_ALLOCATE,
161         .index_operand = BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR
162         },
163         {
164         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
165         .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM,
166         .direction = TF_DIR_RX,
167         .priority = BNXT_ULP_PRIORITY_LEVEL_0,
168         .srch_b4_alloc = BNXT_ULP_SEARCH_BEFORE_ALLOC_NO,
169         .key_start_idx = 0,
170         .blob_key_bit_size = 167,
171         .key_bit_size = 167,
172         .key_num_fields = 13,
173         .result_start_idx = 26,
174         .result_bit_size = 64,
175         .result_num_fields = 13,
176         .encap_num_fields = 0,
177         .ident_start_idx = 0,
178         .ident_nums = 0,
179         .mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,
180         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO
181         },
182         {
183         .resource_func = BNXT_ULP_RESOURCE_FUNC_IF_TABLE,
184         .resource_type = TF_IF_TBL_TYPE_PROF_PARIF_DFLT_ACT_REC_PTR,
185         .direction = TF_DIR_RX,
186         .result_start_idx = 39,
187         .result_bit_size = 32,
188         .result_num_fields = 1,
189         .encap_num_fields = 0,
190         .index_opcode = BNXT_ULP_INDEX_OPCODE_COMP_FIELD,
191         .index_operand = BNXT_ULP_CF_IDX_PHY_PORT_PARIF
192         },
193         {
194         .resource_func = BNXT_ULP_RESOURCE_FUNC_IF_TABLE,
195         .resource_type = TF_IF_TBL_TYPE_PROF_PARIF_ERR_ACT_REC_PTR,
196         .direction = TF_DIR_RX,
197         .result_start_idx = 40,
198         .result_bit_size = 32,
199         .result_num_fields = 1,
200         .encap_num_fields = 0,
201         .index_opcode = BNXT_ULP_INDEX_OPCODE_COMP_FIELD,
202         .index_operand = BNXT_ULP_CF_IDX_PHY_PORT_PARIF
203         },
204         {
205         .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
206         .resource_type = TF_TBL_TYPE_FULL_ACT_RECORD,
207         .resource_sub_type =
208                 BNXT_ULP_RESOURCE_SUB_TYPE_INDEX_TYPE_VFR_CFA_ACTION,
209         .direction = TF_DIR_TX,
210         .result_start_idx = 41,
211         .result_bit_size = 128,
212         .result_num_fields = 26,
213         .encap_num_fields = 0,
214         .mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,
215         .index_opcode = BNXT_ULP_INDEX_OPCODE_ALLOCATE,
216         .index_operand = BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR
217         },
218         {
219         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
220         .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM,
221         .direction = TF_DIR_TX,
222         .priority = BNXT_ULP_PRIORITY_LEVEL_0,
223         .srch_b4_alloc = BNXT_ULP_SEARCH_BEFORE_ALLOC_NO,
224         .key_start_idx = 13,
225         .blob_key_bit_size = 167,
226         .key_bit_size = 167,
227         .key_num_fields = 13,
228         .result_start_idx = 67,
229         .result_bit_size = 64,
230         .result_num_fields = 13,
231         .encap_num_fields = 0,
232         .ident_start_idx = 0,
233         .ident_nums = 0,
234         .mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,
235         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO
236         },
237         {
238         .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
239         .resource_type = TF_TBL_TYPE_ACT_ENCAP_16B,
240         .resource_sub_type =
241                 BNXT_ULP_RESOURCE_SUB_TYPE_INDEX_TYPE_NORMAL,
242         .direction = TF_DIR_TX,
243         .result_start_idx = 80,
244         .result_bit_size = 0,
245         .result_num_fields = 0,
246         .encap_num_fields = 12,
247         .mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,
248         .index_opcode = BNXT_ULP_INDEX_OPCODE_ALLOCATE,
249         .index_operand = BNXT_ULP_REGFILE_INDEX_ENCAP_PTR_0
250         },
251         {
252         .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
253         .resource_type = TF_TBL_TYPE_FULL_ACT_RECORD,
254         .resource_sub_type =
255                 BNXT_ULP_RESOURCE_SUB_TYPE_INDEX_TYPE_VFR_CFA_ACTION,
256         .direction = TF_DIR_TX,
257         .result_start_idx = 92,
258         .result_bit_size = 128,
259         .result_num_fields = 26,
260         .encap_num_fields = 0,
261         .mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,
262         .index_opcode = BNXT_ULP_INDEX_OPCODE_ALLOCATE,
263         .index_operand = BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR
264         },
265         {
266         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
267         .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM,
268         .direction = TF_DIR_TX,
269         .priority = BNXT_ULP_PRIORITY_LEVEL_0,
270         .srch_b4_alloc = BNXT_ULP_SEARCH_BEFORE_ALLOC_NO,
271         .key_start_idx = 26,
272         .blob_key_bit_size = 167,
273         .key_bit_size = 167,
274         .key_num_fields = 13,
275         .result_start_idx = 118,
276         .result_bit_size = 64,
277         .result_num_fields = 13,
278         .encap_num_fields = 0,
279         .ident_start_idx = 0,
280         .ident_nums = 0,
281         .mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,
282         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO
283         },
284         {
285         .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
286         .resource_type = TF_TBL_TYPE_FULL_ACT_RECORD,
287         .resource_sub_type =
288                 BNXT_ULP_RESOURCE_SUB_TYPE_INDEX_TYPE_NORMAL,
289         .direction = TF_DIR_RX,
290         .result_start_idx = 131,
291         .result_bit_size = 128,
292         .result_num_fields = 26,
293         .encap_num_fields = 0,
294         .mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,
295         .index_opcode = BNXT_ULP_INDEX_OPCODE_ALLOCATE,
296         .index_operand = BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR
297         },
298         {
299         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
300         .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM,
301         .direction = TF_DIR_RX,
302         .priority = BNXT_ULP_PRIORITY_LEVEL_0,
303         .srch_b4_alloc = BNXT_ULP_SEARCH_BEFORE_ALLOC_NO,
304         .key_start_idx = 39,
305         .blob_key_bit_size = 167,
306         .key_bit_size = 167,
307         .key_num_fields = 13,
308         .result_start_idx = 157,
309         .result_bit_size = 64,
310         .result_num_fields = 13,
311         .encap_num_fields = 0,
312         .ident_start_idx = 0,
313         .ident_nums = 0,
314         .mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,
315         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO
316         },
317         {
318         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
319         .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM,
320         .direction = TF_DIR_RX,
321         .priority = BNXT_ULP_PRIORITY_LEVEL_0,
322         .srch_b4_alloc = BNXT_ULP_SEARCH_BEFORE_ALLOC_NO,
323         .key_start_idx = 52,
324         .blob_key_bit_size = 167,
325         .key_bit_size = 167,
326         .key_num_fields = 13,
327         .result_start_idx = 170,
328         .result_bit_size = 64,
329         .result_num_fields = 13,
330         .encap_num_fields = 0,
331         .ident_start_idx = 0,
332         .ident_nums = 0,
333         .mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,
334         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO
335         },
336         {
337         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
338         .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM,
339         .direction = TF_DIR_TX,
340         .priority = BNXT_ULP_PRIORITY_LEVEL_0,
341         .srch_b4_alloc = BNXT_ULP_SEARCH_BEFORE_ALLOC_NO,
342         .key_start_idx = 65,
343         .blob_key_bit_size = 167,
344         .key_bit_size = 167,
345         .key_num_fields = 13,
346         .result_start_idx = 183,
347         .result_bit_size = 64,
348         .result_num_fields = 13,
349         .encap_num_fields = 0,
350         .ident_start_idx = 0,
351         .ident_nums = 0,
352         .mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,
353         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO
354         },
355         {
356         .resource_func = BNXT_ULP_RESOURCE_FUNC_IF_TABLE,
357         .resource_type = TF_IF_TBL_TYPE_PROF_PARIF_DFLT_ACT_REC_PTR,
358         .direction = TF_DIR_TX,
359         .result_start_idx = 196,
360         .result_bit_size = 32,
361         .result_num_fields = 1,
362         .encap_num_fields = 0,
363         .index_opcode = BNXT_ULP_INDEX_OPCODE_COMP_FIELD,
364         .index_operand = BNXT_ULP_CF_IDX_VF_FUNC_PARIF
365         },
366         {
367         .resource_func = BNXT_ULP_RESOURCE_FUNC_IF_TABLE,
368         .resource_type = TF_IF_TBL_TYPE_PROF_PARIF_ERR_ACT_REC_PTR,
369         .direction = TF_DIR_TX,
370         .result_start_idx = 197,
371         .result_bit_size = 32,
372         .result_num_fields = 1,
373         .encap_num_fields = 0,
374         .index_opcode = BNXT_ULP_INDEX_OPCODE_COMP_FIELD,
375         .index_operand = BNXT_ULP_CF_IDX_VF_FUNC_PARIF
376         },
377         {
378         .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
379         .resource_type = TF_TBL_TYPE_FULL_ACT_RECORD,
380         .resource_sub_type =
381                 BNXT_ULP_RESOURCE_SUB_TYPE_INDEX_TYPE_NORMAL,
382         .direction = TF_DIR_RX,
383         .result_start_idx = 198,
384         .result_bit_size = 128,
385         .result_num_fields = 26,
386         .encap_num_fields = 0,
387         .mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_SET_VFR_FLAG,
388         .index_opcode = BNXT_ULP_INDEX_OPCODE_ALLOCATE,
389         .index_operand = BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR
390         },
391         {
392         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
393         .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM,
394         .direction = TF_DIR_RX,
395         .priority = BNXT_ULP_PRIORITY_LEVEL_0,
396         .srch_b4_alloc = BNXT_ULP_SEARCH_BEFORE_ALLOC_NO,
397         .key_start_idx = 78,
398         .blob_key_bit_size = 167,
399         .key_bit_size = 167,
400         .key_num_fields = 13,
401         .result_start_idx = 224,
402         .result_bit_size = 64,
403         .result_num_fields = 13,
404         .encap_num_fields = 0,
405         .ident_start_idx = 0,
406         .ident_nums = 0,
407         .mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,
408         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO
409         },
410         {
411         .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
412         .resource_type = TF_TBL_TYPE_ACT_ENCAP_16B,
413         .resource_sub_type =
414                 BNXT_ULP_RESOURCE_SUB_TYPE_INDEX_TYPE_NORMAL,
415         .direction = TF_DIR_TX,
416         .result_start_idx = 237,
417         .result_bit_size = 0,
418         .result_num_fields = 0,
419         .encap_num_fields = 12,
420         .mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,
421         .index_opcode = BNXT_ULP_INDEX_OPCODE_ALLOCATE,
422         .index_operand = BNXT_ULP_REGFILE_INDEX_ENCAP_PTR_0
423         },
424         {
425         .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
426         .resource_type = TF_TBL_TYPE_FULL_ACT_RECORD,
427         .resource_sub_type =
428                 BNXT_ULP_RESOURCE_SUB_TYPE_INDEX_TYPE_NORMAL,
429         .direction = TF_DIR_TX,
430         .result_start_idx = 249,
431         .result_bit_size = 128,
432         .result_num_fields = 26,
433         .encap_num_fields = 0,
434         .mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,
435         .index_opcode = BNXT_ULP_INDEX_OPCODE_ALLOCATE,
436         .index_operand = BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR
437         },
438         {
439         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
440         .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM,
441         .direction = TF_DIR_TX,
442         .priority = BNXT_ULP_PRIORITY_LEVEL_0,
443         .srch_b4_alloc = BNXT_ULP_SEARCH_BEFORE_ALLOC_NO,
444         .key_start_idx = 91,
445         .blob_key_bit_size = 167,
446         .key_bit_size = 167,
447         .key_num_fields = 13,
448         .result_start_idx = 275,
449         .result_bit_size = 64,
450         .result_num_fields = 13,
451         .encap_num_fields = 0,
452         .ident_start_idx = 0,
453         .ident_nums = 0,
454         .mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,
455         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO
456         },
457         {
458         .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
459         .resource_type = TF_TBL_TYPE_FULL_ACT_RECORD,
460         .resource_sub_type =
461                 BNXT_ULP_RESOURCE_SUB_TYPE_INDEX_TYPE_NORMAL,
462         .direction = TF_DIR_RX,
463         .result_start_idx = 288,
464         .result_bit_size = 128,
465         .result_num_fields = 26,
466         .encap_num_fields = 0,
467         .mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,
468         .index_opcode = BNXT_ULP_INDEX_OPCODE_ALLOCATE,
469         .index_operand = BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR
470         },
471         {
472         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
473         .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM,
474         .direction = TF_DIR_RX,
475         .priority = BNXT_ULP_PRIORITY_LEVEL_0,
476         .srch_b4_alloc = BNXT_ULP_SEARCH_BEFORE_ALLOC_NO,
477         .key_start_idx = 104,
478         .blob_key_bit_size = 167,
479         .key_bit_size = 167,
480         .key_num_fields = 13,
481         .result_start_idx = 314,
482         .result_bit_size = 64,
483         .result_num_fields = 13,
484         .encap_num_fields = 0,
485         .ident_start_idx = 0,
486         .ident_nums = 0,
487         .mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,
488         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO
489         },
490         {
491         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
492         .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM,
493         .direction = TF_DIR_RX,
494         .priority = BNXT_ULP_PRIORITY_LEVEL_0,
495         .srch_b4_alloc = BNXT_ULP_SEARCH_BEFORE_ALLOC_NO,
496         .key_start_idx = 117,
497         .blob_key_bit_size = 167,
498         .key_bit_size = 167,
499         .key_num_fields = 13,
500         .result_start_idx = 327,
501         .result_bit_size = 64,
502         .result_num_fields = 13,
503         .encap_num_fields = 0,
504         .ident_start_idx = 0,
505         .ident_nums = 0,
506         .mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,
507         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO
508         },
509         {
510         .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
511         .resource_type = TF_TBL_TYPE_FULL_ACT_RECORD,
512         .resource_sub_type =
513                 BNXT_ULP_RESOURCE_SUB_TYPE_INDEX_TYPE_VFR_CFA_ACTION,
514         .direction = TF_DIR_TX,
515         .result_start_idx = 340,
516         .result_bit_size = 128,
517         .result_num_fields = 26,
518         .encap_num_fields = 0,
519         .mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,
520         .index_opcode = BNXT_ULP_INDEX_OPCODE_GLOBAL,
521         .index_operand = BNXT_ULP_GLB_REGFILE_INDEX_GLB_LB_AREC_PTR
522         },
523         {
524         .resource_func = BNXT_ULP_RESOURCE_FUNC_CACHE_TABLE,
525         .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM,
526         .resource_sub_type =
527                 BNXT_ULP_RESOURCE_SUB_TYPE_CACHE_TYPE_L2_CNTXT_TCAM,
528         .direction = TF_DIR_RX,
529         .key_start_idx = 130,
530         .blob_key_bit_size = 12,
531         .key_bit_size = 12,
532         .key_num_fields = 2,
533         .result_start_idx = 366,
534         .result_bit_size = 10,
535         .result_num_fields = 1,
536         .encap_num_fields = 0,
537         .ident_start_idx = 0,
538         .ident_nums = 1
539         },
540         {
541         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
542         .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM,
543         .direction = TF_DIR_RX,
544         .priority = BNXT_ULP_PRIORITY_LEVEL_0,
545         .srch_b4_alloc = BNXT_ULP_SEARCH_BEFORE_ALLOC_NO,
546         .key_start_idx = 132,
547         .blob_key_bit_size = 167,
548         .key_bit_size = 167,
549         .key_num_fields = 13,
550         .result_start_idx = 367,
551         .result_bit_size = 64,
552         .result_num_fields = 13,
553         .encap_num_fields = 0,
554         .ident_start_idx = 1,
555         .ident_nums = 0,
556         .mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,
557         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO
558         },
559         {
560         .resource_func = BNXT_ULP_RESOURCE_FUNC_CACHE_TABLE,
561         .resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,
562         .resource_sub_type =
563                 BNXT_ULP_RESOURCE_SUB_TYPE_CACHE_TYPE_PROFILE_TCAM,
564         .direction = TF_DIR_RX,
565         .key_start_idx = 145,
566         .blob_key_bit_size = 16,
567         .key_bit_size = 16,
568         .key_num_fields = 3,
569         .result_start_idx = 380,
570         .result_bit_size = 10,
571         .result_num_fields = 1,
572         .encap_num_fields = 0,
573         .ident_start_idx = 1,
574         .ident_nums = 1
575         },
576         {
577         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
578         .resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,
579         .direction = TF_DIR_RX,
580         .priority = BNXT_ULP_PRIORITY_LEVEL_0,
581         .srch_b4_alloc = BNXT_ULP_SEARCH_BEFORE_ALLOC_NO,
582         .key_start_idx = 148,
583         .blob_key_bit_size = 81,
584         .key_bit_size = 81,
585         .key_num_fields = 42,
586         .result_start_idx = 381,
587         .result_bit_size = 38,
588         .result_num_fields = 8,
589         .encap_num_fields = 0,
590         .ident_start_idx = 2,
591         .ident_nums = 0,
592         .mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,
593         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO
594         },
595         {
596         .resource_func = BNXT_ULP_RESOURCE_FUNC_EXT_EM_TABLE,
597         .resource_type = TF_MEM_EXTERNAL,
598         .direction = TF_DIR_RX,
599         .key_start_idx = 190,
600         .blob_key_bit_size = 448,
601         .key_bit_size = 448,
602         .key_num_fields = 11,
603         .result_start_idx = 389,
604         .result_bit_size = 64,
605         .result_num_fields = 9,
606         .encap_num_fields = 0,
607         .ident_start_idx = 2,
608         .ident_nums = 0,
609         .mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_SET_IF_MARK_ACTION,
610         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES
611         },
612         {
613         .resource_func = BNXT_ULP_RESOURCE_FUNC_CACHE_TABLE,
614         .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM,
615         .resource_sub_type =
616                 BNXT_ULP_RESOURCE_SUB_TYPE_CACHE_TYPE_L2_CNTXT_TCAM,
617         .direction = TF_DIR_RX,
618         .key_start_idx = 201,
619         .blob_key_bit_size = 12,
620         .key_bit_size = 12,
621         .key_num_fields = 2,
622         .result_start_idx = 398,
623         .result_bit_size = 10,
624         .result_num_fields = 1,
625         .encap_num_fields = 0,
626         .ident_start_idx = 2,
627         .ident_nums = 1
628         },
629         {
630         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
631         .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM,
632         .direction = TF_DIR_RX,
633         .priority = BNXT_ULP_PRIORITY_LEVEL_0,
634         .srch_b4_alloc = BNXT_ULP_SEARCH_BEFORE_ALLOC_NO,
635         .key_start_idx = 203,
636         .blob_key_bit_size = 167,
637         .key_bit_size = 167,
638         .key_num_fields = 13,
639         .result_start_idx = 399,
640         .result_bit_size = 64,
641         .result_num_fields = 13,
642         .encap_num_fields = 0,
643         .ident_start_idx = 3,
644         .ident_nums = 0,
645         .mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,
646         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO
647         },
648         {
649         .resource_func = BNXT_ULP_RESOURCE_FUNC_CACHE_TABLE,
650         .resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,
651         .resource_sub_type =
652                 BNXT_ULP_RESOURCE_SUB_TYPE_CACHE_TYPE_PROFILE_TCAM,
653         .direction = TF_DIR_RX,
654         .key_start_idx = 216,
655         .blob_key_bit_size = 16,
656         .key_bit_size = 16,
657         .key_num_fields = 3,
658         .result_start_idx = 412,
659         .result_bit_size = 10,
660         .result_num_fields = 1,
661         .encap_num_fields = 0,
662         .ident_start_idx = 3,
663         .ident_nums = 1
664         },
665         {
666         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
667         .resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,
668         .direction = TF_DIR_RX,
669         .priority = BNXT_ULP_PRIORITY_LEVEL_0,
670         .srch_b4_alloc = BNXT_ULP_SEARCH_BEFORE_ALLOC_NO,
671         .key_start_idx = 219,
672         .blob_key_bit_size = 81,
673         .key_bit_size = 81,
674         .key_num_fields = 42,
675         .result_start_idx = 413,
676         .result_bit_size = 38,
677         .result_num_fields = 8,
678         .encap_num_fields = 0,
679         .ident_start_idx = 4,
680         .ident_nums = 0,
681         .mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,
682         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO
683         },
684         {
685         .resource_func = BNXT_ULP_RESOURCE_FUNC_EXT_EM_TABLE,
686         .resource_type = TF_MEM_EXTERNAL,
687         .direction = TF_DIR_RX,
688         .key_start_idx = 261,
689         .blob_key_bit_size = 448,
690         .key_bit_size = 448,
691         .key_num_fields = 11,
692         .result_start_idx = 421,
693         .result_bit_size = 64,
694         .result_num_fields = 9,
695         .encap_num_fields = 0,
696         .ident_start_idx = 4,
697         .ident_nums = 0,
698         .mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_SET_IF_MARK_ACTION,
699         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES
700         },
701         {
702         .resource_func = BNXT_ULP_RESOURCE_FUNC_CACHE_TABLE,
703         .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM,
704         .resource_sub_type =
705                 BNXT_ULP_RESOURCE_SUB_TYPE_CACHE_TYPE_L2_CNTXT_TCAM,
706         .direction = TF_DIR_TX,
707         .key_start_idx = 272,
708         .blob_key_bit_size = 12,
709         .key_bit_size = 12,
710         .key_num_fields = 2,
711         .result_start_idx = 430,
712         .result_bit_size = 10,
713         .result_num_fields = 1,
714         .encap_num_fields = 0,
715         .ident_start_idx = 4,
716         .ident_nums = 1
717         },
718         {
719         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
720         .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM,
721         .direction = TF_DIR_TX,
722         .priority = BNXT_ULP_PRIORITY_LEVEL_0,
723         .srch_b4_alloc = BNXT_ULP_SEARCH_BEFORE_ALLOC_NO,
724         .key_start_idx = 274,
725         .blob_key_bit_size = 167,
726         .key_bit_size = 167,
727         .key_num_fields = 13,
728         .result_start_idx = 431,
729         .result_bit_size = 64,
730         .result_num_fields = 13,
731         .encap_num_fields = 0,
732         .ident_start_idx = 5,
733         .ident_nums = 0,
734         .mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,
735         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO
736         },
737         {
738         .resource_func = BNXT_ULP_RESOURCE_FUNC_CACHE_TABLE,
739         .resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,
740         .resource_sub_type =
741                 BNXT_ULP_RESOURCE_SUB_TYPE_CACHE_TYPE_PROFILE_TCAM,
742         .direction = TF_DIR_TX,
743         .key_start_idx = 287,
744         .blob_key_bit_size = 16,
745         .key_bit_size = 16,
746         .key_num_fields = 3,
747         .result_start_idx = 444,
748         .result_bit_size = 10,
749         .result_num_fields = 1,
750         .encap_num_fields = 0,
751         .ident_start_idx = 5,
752         .ident_nums = 1
753         },
754         {
755         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
756         .resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,
757         .direction = TF_DIR_TX,
758         .priority = BNXT_ULP_PRIORITY_LEVEL_0,
759         .srch_b4_alloc = BNXT_ULP_SEARCH_BEFORE_ALLOC_NO,
760         .key_start_idx = 290,
761         .blob_key_bit_size = 81,
762         .key_bit_size = 81,
763         .key_num_fields = 42,
764         .result_start_idx = 445,
765         .result_bit_size = 38,
766         .result_num_fields = 8,
767         .encap_num_fields = 0,
768         .ident_start_idx = 6,
769         .ident_nums = 0,
770         .mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,
771         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO
772         },
773         {
774         .resource_func = BNXT_ULP_RESOURCE_FUNC_EXT_EM_TABLE,
775         .resource_type = TF_MEM_EXTERNAL,
776         .direction = TF_DIR_TX,
777         .key_start_idx = 332,
778         .blob_key_bit_size = 448,
779         .key_bit_size = 448,
780         .key_num_fields = 11,
781         .result_start_idx = 453,
782         .result_bit_size = 64,
783         .result_num_fields = 9,
784         .encap_num_fields = 0,
785         .ident_start_idx = 6,
786         .ident_nums = 0,
787         .mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_SET_IF_MARK_ACTION,
788         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES
789         }
790 };
791
792 struct bnxt_ulp_mapper_class_key_field_info ulp_class_key_field_list[] = {
793         {
794         .field_bit_size = 12,
795         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
796         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
797         },
798         {
799         .field_bit_size = 12,
800         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
801         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
802         },
803         {
804         .field_bit_size = 48,
805         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
806         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
807         },
808         {
809         .field_bit_size = 8,
810         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
811         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
812                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
813         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,
814         .spec_operand = {
815                 (BNXT_ULP_CF_IDX_PHY_PORT_SVIF >> 8) & 0xff,
816                 BNXT_ULP_CF_IDX_PHY_PORT_SVIF & 0xff,
817                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
818                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
819         },
820         {
821         .field_bit_size = 4,
822         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
823         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
824         },
825         {
826         .field_bit_size = 12,
827         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
828         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
829         },
830         {
831         .field_bit_size = 12,
832         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
833         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
834         },
835         {
836         .field_bit_size = 48,
837         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
838         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
839         },
840         {
841         .field_bit_size = 2,
842         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
843         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
844         },
845         {
846         .field_bit_size = 2,
847         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
848         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
849         },
850         {
851         .field_bit_size = 4,
852         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
853         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
854         },
855         {
856         .field_bit_size = 2,
857         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
858         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
859         },
860         {
861         .field_bit_size = 1,
862         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
863         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
864                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
865         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
866         .spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
867                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
868         },
869         {
870         .field_bit_size = 12,
871         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
872         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
873         },
874         {
875         .field_bit_size = 12,
876         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
877         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
878         },
879         {
880         .field_bit_size = 48,
881         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
882         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
883         },
884         {
885         .field_bit_size = 8,
886         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
887         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
888                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
889         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,
890         .spec_operand = {
891                 (BNXT_ULP_CF_IDX_DRV_FUNC_SVIF >> 8) & 0xff,
892                 BNXT_ULP_CF_IDX_DRV_FUNC_SVIF & 0xff,
893                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
894                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
895         },
896         {
897         .field_bit_size = 4,
898         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
899         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
900         },
901         {
902         .field_bit_size = 12,
903         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
904         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
905         },
906         {
907         .field_bit_size = 12,
908         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
909         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
910         },
911         {
912         .field_bit_size = 48,
913         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
914         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
915         },
916         {
917         .field_bit_size = 2,
918         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
919         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
920         },
921         {
922         .field_bit_size = 2,
923         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
924         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
925         },
926         {
927         .field_bit_size = 4,
928         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
929         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
930         },
931         {
932         .field_bit_size = 2,
933         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
934         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
935         },
936         {
937         .field_bit_size = 1,
938         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
939         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
940                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
941         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
942         .spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
943                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
944         },
945         {
946         .field_bit_size = 12,
947         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
948         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
949         },
950         {
951         .field_bit_size = 12,
952         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
953         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
954         },
955         {
956         .field_bit_size = 48,
957         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
958         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
959         },
960         {
961         .field_bit_size = 8,
962         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
963         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
964                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
965         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,
966         .spec_operand = {
967                 (BNXT_ULP_CF_IDX_DRV_FUNC_SVIF >> 8) & 0xff,
968                 BNXT_ULP_CF_IDX_DRV_FUNC_SVIF & 0xff,
969                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
970                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
971         },
972         {
973         .field_bit_size = 4,
974         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
975         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
976         },
977         {
978         .field_bit_size = 12,
979         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
980         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
981         },
982         {
983         .field_bit_size = 12,
984         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
985         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
986         },
987         {
988         .field_bit_size = 48,
989         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
990         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
991         },
992         {
993         .field_bit_size = 2,
994         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
995         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
996         },
997         {
998         .field_bit_size = 2,
999         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
1000         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
1001         },
1002         {
1003         .field_bit_size = 4,
1004         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
1005         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
1006         },
1007         {
1008         .field_bit_size = 2,
1009         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
1010         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
1011         },
1012         {
1013         .field_bit_size = 1,
1014         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
1015         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
1016                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
1017         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
1018         .spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
1019                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
1020         },
1021         {
1022         .field_bit_size = 12,
1023         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
1024         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
1025         },
1026         {
1027         .field_bit_size = 12,
1028         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
1029         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
1030                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
1031         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,
1032         .spec_operand = {
1033                 (BNXT_ULP_CF_IDX_DEV_PORT_ID >> 8) & 0xff,
1034                 BNXT_ULP_CF_IDX_DEV_PORT_ID & 0xff,
1035                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
1036                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
1037         },
1038         {
1039         .field_bit_size = 48,
1040         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
1041         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
1042         },
1043         {
1044         .field_bit_size = 8,
1045         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
1046         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
1047                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
1048         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,
1049         .spec_operand = {
1050                 (BNXT_ULP_CF_IDX_DRV_FUNC_SVIF >> 8) & 0xff,
1051                 BNXT_ULP_CF_IDX_DRV_FUNC_SVIF & 0xff,
1052                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
1053                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
1054         },
1055         {
1056         .field_bit_size = 4,
1057         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
1058         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
1059         },
1060         {
1061         .field_bit_size = 12,
1062         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
1063         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
1064         },
1065         {
1066         .field_bit_size = 12,
1067         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
1068         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
1069         },
1070         {
1071         .field_bit_size = 48,
1072         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
1073         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
1074         },
1075         {
1076         .field_bit_size = 2,
1077         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
1078         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
1079         .spec_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,
1080                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
1081         },
1082         {
1083         .field_bit_size = 2,
1084         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
1085         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
1086         },
1087         {
1088         .field_bit_size = 4,
1089         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
1090         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
1091                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
1092         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
1093         .spec_operand = {
1094                 BNXT_ULP_SYM_TUN_HDR_TYPE_NONE,
1095                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
1096                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
1097         },
1098         {
1099         .field_bit_size = 2,
1100         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
1101         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
1102         },
1103         {
1104         .field_bit_size = 1,
1105         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
1106         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
1107                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
1108         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
1109         .spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
1110                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
1111         },
1112         {
1113         .field_bit_size = 12,
1114         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
1115         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
1116                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
1117         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,
1118         .spec_operand = {
1119                 (BNXT_ULP_CF_IDX_DEV_PORT_ID >> 8) & 0xff,
1120                 BNXT_ULP_CF_IDX_DEV_PORT_ID & 0xff,
1121                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
1122                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
1123         },
1124         {
1125         .field_bit_size = 12,
1126         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
1127         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
1128         },
1129         {
1130         .field_bit_size = 48,
1131         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
1132         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
1133         },
1134         {
1135         .field_bit_size = 8,
1136         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
1137         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
1138                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
1139         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,
1140         .spec_operand = {
1141                 (BNXT_ULP_CF_IDX_DRV_FUNC_SVIF >> 8) & 0xff,
1142                 BNXT_ULP_CF_IDX_DRV_FUNC_SVIF & 0xff,
1143                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
1144                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
1145         },
1146         {
1147         .field_bit_size = 4,
1148         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
1149         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
1150         },
1151         {
1152         .field_bit_size = 12,
1153         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
1154         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
1155         },
1156         {
1157         .field_bit_size = 12,
1158         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
1159         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
1160         },
1161         {
1162         .field_bit_size = 48,
1163         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
1164         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
1165         },
1166         {
1167         .field_bit_size = 2,
1168         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
1169         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
1170         .spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
1171                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
1172         },
1173         {
1174         .field_bit_size = 2,
1175         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
1176         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
1177         },
1178         {
1179         .field_bit_size = 4,
1180         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
1181         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
1182                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
1183         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
1184         .spec_operand = {
1185                 BNXT_ULP_SYM_TUN_HDR_TYPE_NONE,
1186                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
1187                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
1188         },
1189         {
1190         .field_bit_size = 2,
1191         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
1192         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
1193         },
1194         {
1195         .field_bit_size = 1,
1196         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
1197         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
1198                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
1199         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
1200         .spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
1201                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
1202         },
1203         {
1204         .field_bit_size = 12,
1205         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
1206         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
1207         },
1208         {
1209         .field_bit_size = 12,
1210         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
1211         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
1212         },
1213         {
1214         .field_bit_size = 48,
1215         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
1216         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
1217         },
1218         {
1219         .field_bit_size = 8,
1220         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
1221         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
1222                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
1223         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,
1224         .spec_operand = {
1225                 (BNXT_ULP_CF_IDX_VF_FUNC_SVIF >> 8) & 0xff,
1226                 BNXT_ULP_CF_IDX_VF_FUNC_SVIF & 0xff,
1227                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
1228                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
1229         },
1230         {
1231         .field_bit_size = 4,
1232         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
1233         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
1234         },
1235         {
1236         .field_bit_size = 12,
1237         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
1238         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
1239         },
1240         {
1241         .field_bit_size = 12,
1242         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
1243         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
1244         },
1245         {
1246         .field_bit_size = 48,
1247         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
1248         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
1249         },
1250         {
1251         .field_bit_size = 2,
1252         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
1253         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
1254         },
1255         {
1256         .field_bit_size = 2,
1257         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
1258         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
1259         },
1260         {
1261         .field_bit_size = 4,
1262         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
1263         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
1264         },
1265         {
1266         .field_bit_size = 2,
1267         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
1268         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
1269         },
1270         {
1271         .field_bit_size = 1,
1272         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
1273         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
1274                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
1275         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
1276         .spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
1277                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
1278         },
1279         {
1280         .field_bit_size = 12,
1281         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
1282         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
1283         },
1284         {
1285         .field_bit_size = 12,
1286         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
1287         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
1288         },
1289         {
1290         .field_bit_size = 48,
1291         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
1292         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
1293         },
1294         {
1295         .field_bit_size = 8,
1296         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
1297         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
1298                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
1299         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,
1300         .spec_operand = {
1301                 (BNXT_ULP_CF_IDX_VF_FUNC_SVIF >> 8) & 0xff,
1302                 BNXT_ULP_CF_IDX_VF_FUNC_SVIF & 0xff,
1303                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
1304                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
1305         },
1306         {
1307         .field_bit_size = 4,
1308         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
1309         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
1310         },
1311         {
1312         .field_bit_size = 12,
1313         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
1314         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
1315         },
1316         {
1317         .field_bit_size = 12,
1318         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
1319         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
1320         },
1321         {
1322         .field_bit_size = 48,
1323         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
1324         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
1325         },
1326         {
1327         .field_bit_size = 2,
1328         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
1329         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
1330         },
1331         {
1332         .field_bit_size = 2,
1333         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
1334         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
1335         },
1336         {
1337         .field_bit_size = 4,
1338         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
1339         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
1340         },
1341         {
1342         .field_bit_size = 2,
1343         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
1344         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
1345         },
1346         {
1347         .field_bit_size = 1,
1348         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
1349         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
1350                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
1351         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
1352         .spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
1353                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
1354         },
1355         {
1356         .field_bit_size = 12,
1357         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
1358         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
1359         },
1360         {
1361         .field_bit_size = 12,
1362         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
1363         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
1364                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
1365         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
1366         },
1367         {
1368         .field_bit_size = 48,
1369         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
1370         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
1371         },
1372         {
1373         .field_bit_size = 8,
1374         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
1375         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
1376                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
1377         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,
1378         .spec_operand = {
1379                 (BNXT_ULP_CF_IDX_DRV_FUNC_SVIF >> 8) & 0xff,
1380                 BNXT_ULP_CF_IDX_DRV_FUNC_SVIF & 0xff,
1381                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
1382                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
1383         },
1384         {
1385         .field_bit_size = 4,
1386         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
1387         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
1388         },
1389         {
1390         .field_bit_size = 12,
1391         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
1392         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
1393         },
1394         {
1395         .field_bit_size = 12,
1396         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
1397         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
1398         },
1399         {
1400         .field_bit_size = 48,
1401         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
1402         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
1403         },
1404         {
1405         .field_bit_size = 2,
1406         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
1407         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
1408         },
1409         {
1410         .field_bit_size = 2,
1411         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
1412         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
1413         },
1414         {
1415         .field_bit_size = 4,
1416         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
1417         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
1418                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
1419         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
1420         .spec_operand = {
1421                 BNXT_ULP_SYM_TUN_HDR_TYPE_NONE,
1422                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
1423                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
1424         },
1425         {
1426         .field_bit_size = 2,
1427         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
1428         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
1429         },
1430         {
1431         .field_bit_size = 1,
1432         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
1433         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
1434                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
1435         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
1436         .spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
1437                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
1438         },
1439         {
1440         .field_bit_size = 12,
1441         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
1442         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
1443         },
1444         {
1445         .field_bit_size = 12,
1446         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
1447         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
1448                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
1449         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
1450         .spec_operand = {0x01, 0x02}
1451         },
1452         {
1453         .field_bit_size = 48,
1454         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
1455         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
1456         },
1457         {
1458         .field_bit_size = 8,
1459         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
1460         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
1461                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
1462         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,
1463         .spec_operand = {
1464                 (BNXT_ULP_CF_IDX_DRV_FUNC_SVIF >> 8) & 0xff,
1465                 BNXT_ULP_CF_IDX_DRV_FUNC_SVIF & 0xff,
1466                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
1467                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
1468         },
1469         {
1470         .field_bit_size = 4,
1471         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
1472         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
1473         },
1474         {
1475         .field_bit_size = 12,
1476         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
1477         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
1478         },
1479         {
1480         .field_bit_size = 12,
1481         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
1482         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
1483         },
1484         {
1485         .field_bit_size = 48,
1486         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
1487         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
1488         },
1489         {
1490         .field_bit_size = 2,
1491         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
1492         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
1493         .spec_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,
1494                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
1495         },
1496         {
1497         .field_bit_size = 2,
1498         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
1499         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
1500         },
1501         {
1502         .field_bit_size = 4,
1503         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
1504         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
1505                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
1506         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
1507         .spec_operand = {
1508                 BNXT_ULP_SYM_TUN_HDR_TYPE_NONE,
1509                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
1510                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
1511         },
1512         {
1513         .field_bit_size = 2,
1514         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
1515         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
1516         },
1517         {
1518         .field_bit_size = 1,
1519         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
1520         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
1521                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
1522         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
1523         .spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
1524                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
1525         },
1526         {
1527         .field_bit_size = 12,
1528         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
1529         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
1530         .spec_operand = {0x01, 0x02}
1531         },
1532         {
1533         .field_bit_size = 12,
1534         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
1535         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
1536                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
1537         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
1538         },
1539         {
1540         .field_bit_size = 48,
1541         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
1542         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
1543         },
1544         {
1545         .field_bit_size = 8,
1546         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
1547         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
1548                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
1549         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,
1550         .spec_operand = {
1551                 (BNXT_ULP_CF_IDX_DRV_FUNC_SVIF >> 8) & 0xff,
1552                 BNXT_ULP_CF_IDX_DRV_FUNC_SVIF & 0xff,
1553                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
1554                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
1555         },
1556         {
1557         .field_bit_size = 4,
1558         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
1559         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
1560         },
1561         {
1562         .field_bit_size = 12,
1563         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
1564         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
1565         },
1566         {
1567         .field_bit_size = 12,
1568         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
1569         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
1570         },
1571         {
1572         .field_bit_size = 48,
1573         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
1574         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
1575         },
1576         {
1577         .field_bit_size = 2,
1578         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
1579         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
1580         .spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
1581                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
1582         },
1583         {
1584         .field_bit_size = 2,
1585         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
1586         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
1587         },
1588         {
1589         .field_bit_size = 4,
1590         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
1591         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
1592                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
1593         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
1594         .spec_operand = {
1595                 BNXT_ULP_SYM_TUN_HDR_TYPE_NONE,
1596                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
1597                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
1598         },
1599         {
1600         .field_bit_size = 2,
1601         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
1602         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
1603         },
1604         {
1605         .field_bit_size = 1,
1606         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
1607         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
1608                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
1609         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
1610         .spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
1611                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
1612         },
1613         {
1614         .field_bit_size = 8,
1615         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
1616         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
1617         .spec_operand = {
1618                 (BNXT_ULP_HF8_IDX_SVIF_INDEX >> 8) & 0xff,
1619                 BNXT_ULP_HF8_IDX_SVIF_INDEX & 0xff,
1620                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
1621                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
1622         },
1623         {
1624         .field_bit_size = 4,
1625         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
1626         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
1627         .spec_operand = {
1628                 BNXT_ULP_SYM_TUN_HDR_TYPE_NONE,
1629                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
1630                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
1631         },
1632         {
1633         .field_bit_size = 12,
1634         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
1635         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
1636         },
1637         {
1638         .field_bit_size = 12,
1639         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
1640         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
1641         },
1642         {
1643         .field_bit_size = 48,
1644         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
1645         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
1646         },
1647         {
1648         .field_bit_size = 8,
1649         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
1650         .mask_operand = {
1651                 (BNXT_ULP_HF8_IDX_SVIF_INDEX >> 8) & 0xff,
1652                 BNXT_ULP_HF8_IDX_SVIF_INDEX & 0xff,
1653                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
1654                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
1655         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
1656         .spec_operand = {
1657                 (BNXT_ULP_HF8_IDX_SVIF_INDEX >> 8) & 0xff,
1658                 BNXT_ULP_HF8_IDX_SVIF_INDEX & 0xff,
1659                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
1660                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
1661         },
1662         {
1663         .field_bit_size = 4,
1664         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
1665         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
1666         },
1667         {
1668         .field_bit_size = 12,
1669         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
1670         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
1671         },
1672         {
1673         .field_bit_size = 12,
1674         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
1675         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
1676         },
1677         {
1678         .field_bit_size = 48,
1679         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
1680         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
1681         },
1682         {
1683         .field_bit_size = 2,
1684         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
1685         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
1686         },
1687         {
1688         .field_bit_size = 2,
1689         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
1690         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
1691         },
1692         {
1693         .field_bit_size = 4,
1694         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
1695         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
1696                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
1697         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
1698         .spec_operand = {
1699                 BNXT_ULP_SYM_TUN_HDR_TYPE_NONE,
1700                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
1701                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
1702         },
1703         {
1704         .field_bit_size = 2,
1705         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
1706         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
1707         },
1708         {
1709         .field_bit_size = 1,
1710         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
1711         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
1712                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
1713         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
1714         .spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
1715                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
1716         },
1717         {
1718         .field_bit_size = 1,
1719         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
1720         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
1721         },
1722         {
1723         .field_bit_size = 7,
1724         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
1725         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
1726         .spec_operand = {
1727                 (BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID >> 8) & 0xff,
1728                 BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID & 0xff,
1729                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
1730                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
1731         },
1732         {
1733         .field_bit_size = 8,
1734         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
1735         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
1736         .spec_operand = {
1737                 (BNXT_ULP_REGFILE_INDEX_CLASS_TID >> 8) & 0xff,
1738                 BNXT_ULP_REGFILE_INDEX_CLASS_TID & 0xff,
1739                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
1740                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
1741         },
1742         {
1743         .field_bit_size = 1,
1744         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
1745         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
1746         },
1747         {
1748         .field_bit_size = 4,
1749         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
1750         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
1751                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
1752         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
1753         .spec_operand = {
1754                 BNXT_ULP_SYM_L4_HDR_TYPE_UDP,
1755                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
1756                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
1757         },
1758         {
1759         .field_bit_size = 1,
1760         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
1761         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
1762                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
1763         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
1764         },
1765         {
1766         .field_bit_size = 1,
1767         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
1768         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
1769                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
1770         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
1771         .spec_operand = {
1772                 BNXT_ULP_SYM_L4_HDR_VALID_YES,
1773                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
1774                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
1775         },
1776         {
1777         .field_bit_size = 1,
1778         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
1779         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
1780         },
1781         {
1782         .field_bit_size = 1,
1783         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
1784         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
1785         },
1786         {
1787         .field_bit_size = 1,
1788         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
1789         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
1790         },
1791         {
1792         .field_bit_size = 4,
1793         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
1794         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
1795                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
1796         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
1797         },
1798         {
1799         .field_bit_size = 1,
1800         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
1801         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
1802                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
1803         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
1804         },
1805         {
1806         .field_bit_size = 1,
1807         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
1808         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
1809                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
1810         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
1811         .spec_operand = {
1812                 BNXT_ULP_SYM_L3_HDR_VALID_YES,
1813                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
1814                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
1815         },
1816         {
1817         .field_bit_size = 1,
1818         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
1819         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
1820         },
1821         {
1822         .field_bit_size = 1,
1823         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
1824         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
1825         },
1826         {
1827         .field_bit_size = 2,
1828         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
1829         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
1830                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
1831         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
1832         },
1833         {
1834         .field_bit_size = 2,
1835         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
1836         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
1837                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
1838         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
1839         },
1840         {
1841         .field_bit_size = 1,
1842         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
1843         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
1844                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
1845         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
1846         },
1847         {
1848         .field_bit_size = 1,
1849         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
1850         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
1851                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
1852         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
1853         .spec_operand = {
1854                 BNXT_ULP_SYM_L2_HDR_VALID_YES,
1855                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
1856                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
1857         },
1858         {
1859         .field_bit_size = 3,
1860         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
1861         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
1862         },
1863         {
1864         .field_bit_size = 4,
1865         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
1866         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
1867         },
1868         {
1869         .field_bit_size = 1,
1870         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
1871         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
1872         },
1873         {
1874         .field_bit_size = 1,
1875         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
1876         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
1877         },
1878         {
1879         .field_bit_size = 1,
1880         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
1881         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
1882         },
1883         {
1884         .field_bit_size = 4,
1885         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
1886         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
1887         },
1888         {
1889         .field_bit_size = 1,
1890         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
1891         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
1892         },
1893         {
1894         .field_bit_size = 1,
1895         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
1896         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
1897         },
1898         {
1899         .field_bit_size = 1,
1900         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
1901         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
1902         },
1903         {
1904         .field_bit_size = 1,
1905         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
1906         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
1907         },
1908         {
1909         .field_bit_size = 1,
1910         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
1911         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
1912         },
1913         {
1914         .field_bit_size = 4,
1915         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
1916         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
1917         },
1918         {
1919         .field_bit_size = 1,
1920         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
1921         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
1922         },
1923         {
1924         .field_bit_size = 1,
1925         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
1926         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
1927         },
1928         {
1929         .field_bit_size = 1,
1930         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
1931         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
1932         },
1933         {
1934         .field_bit_size = 1,
1935         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
1936         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
1937         },
1938         {
1939         .field_bit_size = 2,
1940         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
1941         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
1942         },
1943         {
1944         .field_bit_size = 2,
1945         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
1946         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
1947         },
1948         {
1949         .field_bit_size = 1,
1950         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
1951         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
1952         },
1953         {
1954         .field_bit_size = 1,
1955         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
1956         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
1957         },
1958         {
1959         .field_bit_size = 9,
1960         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
1961         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
1962         },
1963         {
1964         .field_bit_size = 7,
1965         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
1966         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
1967                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
1968         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
1969         .spec_operand = {
1970                 (BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID >> 8) & 0xff,
1971                 BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID & 0xff,
1972                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
1973                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
1974         },
1975         {
1976         .field_bit_size = 1,
1977         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
1978         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
1979         },
1980         {
1981         .field_bit_size = 2,
1982         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
1983         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
1984                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
1985         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
1986         },
1987         {
1988         .field_bit_size = 4,
1989         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
1990         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
1991                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
1992         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
1993         },
1994         {
1995         .field_bit_size = 1,
1996         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
1997         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
1998                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
1999         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
2000         .spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
2001                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
2002         },
2003         {
2004         .field_bit_size = 251,
2005         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2006         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2007         },
2008         {
2009         .field_bit_size = 3,
2010         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2011         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2012         },
2013         {
2014         .field_bit_size = 16,
2015         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2016         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
2017         .spec_operand = {
2018                 (BNXT_ULP_HF8_IDX_O_UDP_DST_PORT >> 8) & 0xff,
2019                 BNXT_ULP_HF8_IDX_O_UDP_DST_PORT & 0xff,
2020                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
2021                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
2022         },
2023         {
2024         .field_bit_size = 16,
2025         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2026         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
2027         .spec_operand = {
2028                 (BNXT_ULP_HF8_IDX_O_UDP_SRC_PORT >> 8) & 0xff,
2029                 BNXT_ULP_HF8_IDX_O_UDP_SRC_PORT & 0xff,
2030                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
2031                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
2032         },
2033         {
2034         .field_bit_size = 8,
2035         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2036         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
2037         .spec_operand = {
2038                 BNXT_ULP_SYM_IP_PROTO_UDP,
2039                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
2040                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
2041         },
2042         {
2043         .field_bit_size = 32,
2044         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2045         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
2046         .spec_operand = {
2047                 (BNXT_ULP_HF8_IDX_O_IPV4_DST_ADDR >> 8) & 0xff,
2048                 BNXT_ULP_HF8_IDX_O_IPV4_DST_ADDR & 0xff,
2049                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
2050                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
2051         },
2052         {
2053         .field_bit_size = 32,
2054         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2055         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
2056         .spec_operand = {
2057                 (BNXT_ULP_HF8_IDX_O_IPV4_SRC_ADDR >> 8) & 0xff,
2058                 BNXT_ULP_HF8_IDX_O_IPV4_SRC_ADDR & 0xff,
2059                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
2060                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
2061         },
2062         {
2063         .field_bit_size = 48,
2064         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2065         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2066         },
2067         {
2068         .field_bit_size = 24,
2069         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2070         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2071         },
2072         {
2073         .field_bit_size = 10,
2074         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2075         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
2076         .spec_operand = {
2077                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
2078                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
2079                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
2080                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
2081         },
2082         {
2083         .field_bit_size = 8,
2084         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2085         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
2086         .spec_operand = {
2087                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
2088                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
2089                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
2090                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
2091         },
2092         {
2093         .field_bit_size = 8,
2094         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2095         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
2096         .spec_operand = {
2097                 (BNXT_ULP_HF9_IDX_SVIF_INDEX >> 8) & 0xff,
2098                 BNXT_ULP_HF9_IDX_SVIF_INDEX & 0xff,
2099                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
2100                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
2101         },
2102         {
2103         .field_bit_size = 4,
2104         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2105         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
2106         .spec_operand = {
2107                 BNXT_ULP_SYM_TUN_HDR_TYPE_NONE,
2108                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
2109                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
2110         },
2111         {
2112         .field_bit_size = 12,
2113         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2114         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2115         },
2116         {
2117         .field_bit_size = 12,
2118         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2119         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2120         },
2121         {
2122         .field_bit_size = 48,
2123         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2124         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2125         },
2126         {
2127         .field_bit_size = 8,
2128         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
2129         .mask_operand = {
2130                 (BNXT_ULP_HF9_IDX_SVIF_INDEX >> 8) & 0xff,
2131                 BNXT_ULP_HF9_IDX_SVIF_INDEX & 0xff,
2132                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
2133                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
2134         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
2135         .spec_operand = {
2136                 (BNXT_ULP_HF9_IDX_SVIF_INDEX >> 8) & 0xff,
2137                 BNXT_ULP_HF9_IDX_SVIF_INDEX & 0xff,
2138                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
2139                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
2140         },
2141         {
2142         .field_bit_size = 4,
2143         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2144         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2145         },
2146         {
2147         .field_bit_size = 12,
2148         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2149         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2150         },
2151         {
2152         .field_bit_size = 12,
2153         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2154         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2155         },
2156         {
2157         .field_bit_size = 48,
2158         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2159         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2160         },
2161         {
2162         .field_bit_size = 2,
2163         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2164         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2165         },
2166         {
2167         .field_bit_size = 2,
2168         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2169         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2170         },
2171         {
2172         .field_bit_size = 4,
2173         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
2174         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
2175                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
2176         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2177         },
2178         {
2179         .field_bit_size = 2,
2180         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2181         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2182         },
2183         {
2184         .field_bit_size = 1,
2185         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
2186         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
2187                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
2188         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
2189         .spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
2190                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
2191         },
2192         {
2193         .field_bit_size = 1,
2194         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2195         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2196         },
2197         {
2198         .field_bit_size = 7,
2199         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2200         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
2201         .spec_operand = {
2202                 (BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID >> 8) & 0xff,
2203                 BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID & 0xff,
2204                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
2205                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
2206         },
2207         {
2208         .field_bit_size = 8,
2209         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2210         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
2211         .spec_operand = {
2212                 (BNXT_ULP_REGFILE_INDEX_CLASS_TID >> 8) & 0xff,
2213                 BNXT_ULP_REGFILE_INDEX_CLASS_TID & 0xff,
2214                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
2215                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
2216         },
2217         {
2218         .field_bit_size = 1,
2219         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2220         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2221         },
2222         {
2223         .field_bit_size = 4,
2224         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
2225         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
2226                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
2227         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
2228         .spec_operand = {
2229                 BNXT_ULP_SYM_L4_HDR_TYPE_UDP,
2230                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
2231                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
2232         },
2233         {
2234         .field_bit_size = 1,
2235         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
2236         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
2237                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
2238         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2239         },
2240         {
2241         .field_bit_size = 1,
2242         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
2243         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
2244                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
2245         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
2246         .spec_operand = {
2247                 BNXT_ULP_SYM_L4_HDR_VALID_YES,
2248                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
2249                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
2250         },
2251         {
2252         .field_bit_size = 1,
2253         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2254         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2255         },
2256         {
2257         .field_bit_size = 1,
2258         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2259         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2260         },
2261         {
2262         .field_bit_size = 1,
2263         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2264         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2265         },
2266         {
2267         .field_bit_size = 4,
2268         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
2269         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
2270                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
2271         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2272         },
2273         {
2274         .field_bit_size = 1,
2275         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
2276         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
2277                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
2278         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2279         },
2280         {
2281         .field_bit_size = 1,
2282         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
2283         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
2284                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
2285         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
2286         .spec_operand = {
2287                 BNXT_ULP_SYM_L3_HDR_VALID_YES,
2288                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
2289                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
2290         },
2291         {
2292         .field_bit_size = 1,
2293         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2294         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2295         },
2296         {
2297         .field_bit_size = 1,
2298         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2299         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2300         },
2301         {
2302         .field_bit_size = 2,
2303         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2304         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2305         },
2306         {
2307         .field_bit_size = 2,
2308         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
2309         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
2310                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
2311         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2312         },
2313         {
2314         .field_bit_size = 1,
2315         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
2316         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
2317                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
2318         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2319         },
2320         {
2321         .field_bit_size = 1,
2322         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
2323         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
2324                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
2325         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
2326         .spec_operand = {
2327                 BNXT_ULP_SYM_L2_HDR_VALID_YES,
2328                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
2329                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
2330         },
2331         {
2332         .field_bit_size = 3,
2333         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2334         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2335         },
2336         {
2337         .field_bit_size = 4,
2338         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
2339         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
2340                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
2341         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2342         },
2343         {
2344         .field_bit_size = 1,
2345         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
2346         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
2347                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
2348         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2349         },
2350         {
2351         .field_bit_size = 1,
2352         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
2353         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
2354                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
2355         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
2356         .spec_operand = {
2357                 BNXT_ULP_SYM_TUN_HDR_VALID_YES,
2358                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
2359                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
2360         },
2361         {
2362         .field_bit_size = 1,
2363         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2364         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2365         },
2366         {
2367         .field_bit_size = 4,
2368         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
2369         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
2370                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
2371         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
2372         .spec_operand = {
2373                 BNXT_ULP_SYM_TL4_HDR_TYPE_UDP,
2374                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
2375                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
2376         },
2377         {
2378         .field_bit_size = 1,
2379         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
2380         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
2381                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
2382         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2383         },
2384         {
2385         .field_bit_size = 1,
2386         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
2387         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
2388                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
2389         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
2390         .spec_operand = {
2391                 BNXT_ULP_SYM_TL4_HDR_VALID_YES,
2392                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
2393                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
2394         },
2395         {
2396         .field_bit_size = 1,
2397         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2398         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2399         },
2400         {
2401         .field_bit_size = 1,
2402         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2403         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2404         },
2405         {
2406         .field_bit_size = 1,
2407         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2408         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2409         },
2410         {
2411         .field_bit_size = 4,
2412         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
2413         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
2414                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
2415         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2416         },
2417         {
2418         .field_bit_size = 1,
2419         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
2420         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
2421                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
2422         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2423         },
2424         {
2425         .field_bit_size = 1,
2426         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
2427         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
2428                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
2429         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
2430         .spec_operand = {
2431                 BNXT_ULP_SYM_TL3_HDR_VALID_YES,
2432                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
2433                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
2434         },
2435         {
2436         .field_bit_size = 1,
2437         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2438         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2439         },
2440         {
2441         .field_bit_size = 1,
2442         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2443         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2444         },
2445         {
2446         .field_bit_size = 2,
2447         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
2448         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
2449                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
2450         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2451         },
2452         {
2453         .field_bit_size = 2,
2454         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
2455         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
2456                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
2457         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2458         },
2459         {
2460         .field_bit_size = 1,
2461         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
2462         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
2463                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
2464         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
2465         .spec_operand = {
2466                 BNXT_ULP_SYM_TL2_HDR_VALID_YES,
2467                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
2468                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
2469         },
2470         {
2471         .field_bit_size = 1,
2472         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2473         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2474         },
2475         {
2476         .field_bit_size = 9,
2477         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2478         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2479         },
2480         {
2481         .field_bit_size = 7,
2482         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
2483         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
2484                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
2485         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
2486         .spec_operand = {
2487                 (BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID >> 8) & 0xff,
2488                 BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID & 0xff,
2489                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
2490                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
2491         },
2492         {
2493         .field_bit_size = 1,
2494         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2495         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2496         },
2497         {
2498         .field_bit_size = 2,
2499         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
2500         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
2501                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
2502         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2503         },
2504         {
2505         .field_bit_size = 4,
2506         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
2507         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
2508                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
2509         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2510         },
2511         {
2512         .field_bit_size = 1,
2513         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
2514         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
2515                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
2516         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
2517         .spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
2518                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
2519         },
2520         {
2521         .field_bit_size = 251,
2522         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2523         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2524         },
2525         {
2526         .field_bit_size = 3,
2527         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2528         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2529         },
2530         {
2531         .field_bit_size = 16,
2532         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2533         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
2534         .spec_operand = {
2535                 (BNXT_ULP_HF9_IDX_I_UDP_DST_PORT >> 8) & 0xff,
2536                 BNXT_ULP_HF9_IDX_I_UDP_DST_PORT & 0xff,
2537                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
2538                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
2539         },
2540         {
2541         .field_bit_size = 16,
2542         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2543         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
2544         .spec_operand = {
2545                 (BNXT_ULP_HF9_IDX_I_UDP_SRC_PORT >> 8) & 0xff,
2546                 BNXT_ULP_HF9_IDX_I_UDP_SRC_PORT & 0xff,
2547                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
2548                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
2549         },
2550         {
2551         .field_bit_size = 8,
2552         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2553         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
2554         .spec_operand = {
2555                 BNXT_ULP_SYM_IP_PROTO_UDP,
2556                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
2557                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
2558         },
2559         {
2560         .field_bit_size = 32,
2561         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2562         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
2563         .spec_operand = {
2564                 (BNXT_ULP_HF9_IDX_I_IPV4_DST_ADDR >> 8) & 0xff,
2565                 BNXT_ULP_HF9_IDX_I_IPV4_DST_ADDR & 0xff,
2566                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
2567                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
2568         },
2569         {
2570         .field_bit_size = 32,
2571         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2572         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
2573         .spec_operand = {
2574                 (BNXT_ULP_HF9_IDX_I_IPV4_SRC_ADDR >> 8) & 0xff,
2575                 BNXT_ULP_HF9_IDX_I_IPV4_SRC_ADDR & 0xff,
2576                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
2577                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
2578         },
2579         {
2580         .field_bit_size = 48,
2581         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2582         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2583         },
2584         {
2585         .field_bit_size = 24,
2586         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2587         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2588         },
2589         {
2590         .field_bit_size = 10,
2591         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2592         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
2593         .spec_operand = {
2594                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
2595                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
2596                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
2597                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
2598         },
2599         {
2600         .field_bit_size = 8,
2601         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2602         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
2603         .spec_operand = {
2604                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
2605                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
2606                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
2607                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
2608         },
2609         {
2610         .field_bit_size = 8,
2611         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2612         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
2613         .spec_operand = {
2614                 (BNXT_ULP_HF10_IDX_SVIF_INDEX >> 8) & 0xff,
2615                 BNXT_ULP_HF10_IDX_SVIF_INDEX & 0xff,
2616                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
2617                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
2618         },
2619         {
2620         .field_bit_size = 4,
2621         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2622         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
2623         .spec_operand = {
2624                 BNXT_ULP_SYM_TUN_HDR_TYPE_NONE,
2625                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
2626                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
2627         },
2628         {
2629         .field_bit_size = 12,
2630         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2631         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2632         },
2633         {
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         .field_bit_size = 48,
2640         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2641         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2642         },
2643         {
2644         .field_bit_size = 8,
2645         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
2646         .mask_operand = {
2647                 (BNXT_ULP_HF10_IDX_SVIF_INDEX >> 8) & 0xff,
2648                 BNXT_ULP_HF10_IDX_SVIF_INDEX & 0xff,
2649                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
2650                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
2651         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
2652         .spec_operand = {
2653                 (BNXT_ULP_HF10_IDX_SVIF_INDEX >> 8) & 0xff,
2654                 BNXT_ULP_HF10_IDX_SVIF_INDEX & 0xff,
2655                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
2656                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
2657         },
2658         {
2659         .field_bit_size = 4,
2660         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2661         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2662         },
2663         {
2664         .field_bit_size = 12,
2665         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2666         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2667         },
2668         {
2669         .field_bit_size = 12,
2670         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2671         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2672         },
2673         {
2674         .field_bit_size = 48,
2675         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2676         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2677         },
2678         {
2679         .field_bit_size = 2,
2680         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2681         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2682         },
2683         {
2684         .field_bit_size = 2,
2685         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2686         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2687         },
2688         {
2689         .field_bit_size = 4,
2690         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
2691         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
2692                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
2693         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
2694         .spec_operand = {
2695                 BNXT_ULP_SYM_TUN_HDR_TYPE_NONE,
2696                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
2697                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
2698         },
2699         {
2700         .field_bit_size = 2,
2701         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2702         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2703         },
2704         {
2705         .field_bit_size = 1,
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_CONSTANT,
2710         .spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
2711                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
2712         },
2713         {
2714         .field_bit_size = 1,
2715         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2716         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2717         },
2718         {
2719         .field_bit_size = 7,
2720         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2721         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
2722         .spec_operand = {
2723                 (BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID >> 8) & 0xff,
2724                 BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID & 0xff,
2725                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
2726                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
2727         },
2728         {
2729         .field_bit_size = 8,
2730         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2731         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
2732         .spec_operand = {
2733                 (BNXT_ULP_REGFILE_INDEX_CLASS_TID >> 8) & 0xff,
2734                 BNXT_ULP_REGFILE_INDEX_CLASS_TID & 0xff,
2735                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
2736                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
2737         },
2738         {
2739         .field_bit_size = 1,
2740         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2741         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2742         },
2743         {
2744         .field_bit_size = 4,
2745         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
2746         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
2747                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
2748         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
2749         .spec_operand = {
2750                 BNXT_ULP_SYM_L4_HDR_TYPE_UDP,
2751                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
2752                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
2753         },
2754         {
2755         .field_bit_size = 1,
2756         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
2757         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
2758                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
2759         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2760         },
2761         {
2762         .field_bit_size = 1,
2763         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
2764         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
2765                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
2766         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
2767         .spec_operand = {
2768                 BNXT_ULP_SYM_L4_HDR_VALID_YES,
2769                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
2770                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
2771         },
2772         {
2773         .field_bit_size = 1,
2774         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2775         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2776         },
2777         {
2778         .field_bit_size = 1,
2779         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2780         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2781         },
2782         {
2783         .field_bit_size = 1,
2784         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2785         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2786         },
2787         {
2788         .field_bit_size = 4,
2789         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
2790         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
2791                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
2792         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2793         },
2794         {
2795         .field_bit_size = 1,
2796         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
2797         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
2798                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
2799         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2800         },
2801         {
2802         .field_bit_size = 1,
2803         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
2804         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
2805                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
2806         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
2807         .spec_operand = {
2808                 BNXT_ULP_SYM_L3_HDR_VALID_YES,
2809                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
2810                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
2811         },
2812         {
2813         .field_bit_size = 1,
2814         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2815         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2816         },
2817         {
2818         .field_bit_size = 1,
2819         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2820         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2821         },
2822         {
2823         .field_bit_size = 2,
2824         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2825         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2826         },
2827         {
2828         .field_bit_size = 2,
2829         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
2830         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
2831                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
2832         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2833         },
2834         {
2835         .field_bit_size = 1,
2836         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
2837         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
2838                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
2839         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2840         },
2841         {
2842         .field_bit_size = 1,
2843         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
2844         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
2845                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
2846         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
2847         .spec_operand = {
2848                 BNXT_ULP_SYM_L2_HDR_VALID_YES,
2849                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
2850                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
2851         },
2852         {
2853         .field_bit_size = 3,
2854         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2855         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2856         },
2857         {
2858         .field_bit_size = 4,
2859         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2860         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2861         },
2862         {
2863         .field_bit_size = 1,
2864         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2865         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2866         },
2867         {
2868         .field_bit_size = 1,
2869         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2870         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2871         },
2872         {
2873         .field_bit_size = 1,
2874         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2875         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2876         },
2877         {
2878         .field_bit_size = 4,
2879         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2880         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2881         },
2882         {
2883         .field_bit_size = 1,
2884         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2885         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2886         },
2887         {
2888         .field_bit_size = 1,
2889         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2890         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2891         },
2892         {
2893         .field_bit_size = 1,
2894         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2895         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2896         },
2897         {
2898         .field_bit_size = 1,
2899         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2900         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2901         },
2902         {
2903         .field_bit_size = 1,
2904         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2905         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2906         },
2907         {
2908         .field_bit_size = 4,
2909         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2910         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2911         },
2912         {
2913         .field_bit_size = 1,
2914         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2915         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2916         },
2917         {
2918         .field_bit_size = 1,
2919         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2920         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2921         },
2922         {
2923         .field_bit_size = 1,
2924         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2925         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2926         },
2927         {
2928         .field_bit_size = 1,
2929         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2930         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2931         },
2932         {
2933         .field_bit_size = 2,
2934         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2935         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2936         },
2937         {
2938         .field_bit_size = 2,
2939         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2940         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2941         },
2942         {
2943         .field_bit_size = 1,
2944         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2945         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2946         },
2947         {
2948         .field_bit_size = 1,
2949         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2950         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2951         },
2952         {
2953         .field_bit_size = 9,
2954         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2955         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2956         },
2957         {
2958         .field_bit_size = 7,
2959         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
2960         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
2961                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
2962         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
2963         .spec_operand = {
2964                 (BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID >> 8) & 0xff,
2965                 BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID & 0xff,
2966                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
2967                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
2968         },
2969         {
2970         .field_bit_size = 1,
2971         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2972         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2973         },
2974         {
2975         .field_bit_size = 2,
2976         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
2977         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
2978                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
2979         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2980         },
2981         {
2982         .field_bit_size = 4,
2983         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
2984         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
2985                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
2986         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2987         },
2988         {
2989         .field_bit_size = 1,
2990         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
2991         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
2992                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
2993         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
2994         .spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
2995                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
2996         },
2997         {
2998         .field_bit_size = 251,
2999         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3000         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3001         },
3002         {
3003         .field_bit_size = 3,
3004         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3005         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3006         },
3007         {
3008         .field_bit_size = 16,
3009         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3010         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
3011         .spec_operand = {
3012                 (BNXT_ULP_HF10_IDX_O_UDP_DST_PORT >> 8) & 0xff,
3013                 BNXT_ULP_HF10_IDX_O_UDP_DST_PORT & 0xff,
3014                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
3015                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
3016         },
3017         {
3018         .field_bit_size = 16,
3019         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3020         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
3021         .spec_operand = {
3022                 (BNXT_ULP_HF10_IDX_O_UDP_SRC_PORT >> 8) & 0xff,
3023                 BNXT_ULP_HF10_IDX_O_UDP_SRC_PORT & 0xff,
3024                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
3025                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
3026         },
3027         {
3028         .field_bit_size = 8,
3029         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3030         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
3031         .spec_operand = {
3032                 BNXT_ULP_SYM_IP_PROTO_UDP,
3033                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
3034                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
3035         },
3036         {
3037         .field_bit_size = 32,
3038         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3039         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
3040         .spec_operand = {
3041                 (BNXT_ULP_HF10_IDX_O_IPV4_DST_ADDR >> 8) & 0xff,
3042                 BNXT_ULP_HF10_IDX_O_IPV4_DST_ADDR & 0xff,
3043                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
3044                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
3045         },
3046         {
3047         .field_bit_size = 32,
3048         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3049         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
3050         .spec_operand = {
3051                 (BNXT_ULP_HF10_IDX_O_IPV4_SRC_ADDR >> 8) & 0xff,
3052                 BNXT_ULP_HF10_IDX_O_IPV4_SRC_ADDR & 0xff,
3053                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
3054                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
3055         },
3056         {
3057         .field_bit_size = 48,
3058         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3059         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3060         },
3061         {
3062         .field_bit_size = 24,
3063         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3064         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3065         },
3066         {
3067         .field_bit_size = 10,
3068         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3069         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
3070         .spec_operand = {
3071                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
3072                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
3073                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
3074                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
3075         },
3076         {
3077         .field_bit_size = 8,
3078         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3079         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
3080         .spec_operand = {
3081                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
3082                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
3083                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
3084                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
3085         }
3086 };
3087
3088 struct bnxt_ulp_mapper_result_field_info ulp_class_result_field_list[] = {
3089         {
3090         .field_bit_size = 14,
3091         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3092         },
3093         {
3094         .field_bit_size = 1,
3095         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3096         },
3097         {
3098         .field_bit_size = 1,
3099         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3100         },
3101         {
3102         .field_bit_size = 1,
3103         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3104         },
3105         {
3106         .field_bit_size = 1,
3107         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3108         },
3109         {
3110         .field_bit_size = 8,
3111         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3112         },
3113         {
3114         .field_bit_size = 1,
3115         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3116         },
3117         {
3118         .field_bit_size = 1,
3119         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3120         },
3121         {
3122         .field_bit_size = 11,
3123         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3124         },
3125         {
3126         .field_bit_size = 10,
3127         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3128         },
3129         {
3130         .field_bit_size = 16,
3131         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3132         },
3133         {
3134         .field_bit_size = 10,
3135         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3136         },
3137         {
3138         .field_bit_size = 16,
3139         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3140         },
3141         {
3142         .field_bit_size = 10,
3143         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3144         },
3145         {
3146         .field_bit_size = 1,
3147         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3148         },
3149         {
3150         .field_bit_size = 1,
3151         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3152         },
3153         {
3154         .field_bit_size = 1,
3155         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3156         },
3157         {
3158         .field_bit_size = 1,
3159         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3160         },
3161         {
3162         .field_bit_size = 4,
3163         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3164         },
3165         {
3166         .field_bit_size = 12,
3167         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,
3168         .result_operand = {
3169                 (BNXT_ULP_CF_IDX_DRV_FUNC_VNIC >> 8) & 0xff,
3170                 BNXT_ULP_CF_IDX_DRV_FUNC_VNIC & 0xff,
3171                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
3172                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
3173         },
3174         {
3175         .field_bit_size = 1,
3176         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3177         },
3178         {
3179         .field_bit_size = 1,
3180         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3181         },
3182         {
3183         .field_bit_size = 2,
3184         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3185         },
3186         {
3187         .field_bit_size = 1,
3188         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3189         },
3190         {
3191         .field_bit_size = 1,
3192         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3193         },
3194         {
3195         .field_bit_size = 1,
3196         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3197         },
3198         {
3199         .field_bit_size = 10,
3200         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
3201         .result_operand = {
3202                 (BNXT_ULP_GLB_REGFILE_INDEX_GLB_L2_CNTXT_ID >> 8) & 0xff,
3203                 BNXT_ULP_GLB_REGFILE_INDEX_GLB_L2_CNTXT_ID & 0xff,
3204                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
3205                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
3206         },
3207         {
3208         .field_bit_size = 7,
3209         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
3210         .result_operand = {
3211                 (BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID >> 8) & 0xff,
3212                 BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID & 0xff,
3213                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
3214                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
3215         },
3216         {
3217         .field_bit_size = 1,
3218         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3219         },
3220         {
3221         .field_bit_size = 4,
3222         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,
3223         .result_operand = {
3224                 (BNXT_ULP_CF_IDX_PHY_PORT_PARIF >> 8) & 0xff,
3225                 BNXT_ULP_CF_IDX_PHY_PORT_PARIF & 0xff,
3226                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
3227                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
3228         },
3229         {
3230         .field_bit_size = 8,
3231         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3232         },
3233         {
3234         .field_bit_size = 3,
3235         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3236         },
3237         {
3238         .field_bit_size = 6,
3239         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3240         },
3241         {
3242         .field_bit_size = 3,
3243         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3244         },
3245         {
3246         .field_bit_size = 1,
3247         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3248         },
3249         {
3250         .field_bit_size = 16,
3251         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3252         },
3253         {
3254         .field_bit_size = 1,
3255         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
3256         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
3257                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
3258         },
3259         {
3260         .field_bit_size = 2,
3261         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3262         },
3263         {
3264         .field_bit_size = 2,
3265         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3266         },
3267         {
3268         .field_bit_size = 32,
3269         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
3270         .result_operand = {
3271                 (BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR >> 8) & 0xff,
3272                 BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR & 0xff,
3273                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
3274                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
3275         },
3276         {
3277         .field_bit_size = 32,
3278         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
3279         .result_operand = {
3280                 (BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR >> 8) & 0xff,
3281                 BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR & 0xff,
3282                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
3283                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
3284         },
3285         {
3286         .field_bit_size = 14,
3287         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3288         },
3289         {
3290         .field_bit_size = 1,
3291         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3292         },
3293         {
3294         .field_bit_size = 1,
3295         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3296         },
3297         {
3298         .field_bit_size = 1,
3299         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3300         },
3301         {
3302         .field_bit_size = 1,
3303         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3304         },
3305         {
3306         .field_bit_size = 8,
3307         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3308         },
3309         {
3310         .field_bit_size = 1,
3311         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3312         },
3313         {
3314         .field_bit_size = 1,
3315         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3316         },
3317         {
3318         .field_bit_size = 11,
3319         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3320         },
3321         {
3322         .field_bit_size = 10,
3323         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3324         },
3325         {
3326         .field_bit_size = 16,
3327         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3328         },
3329         {
3330         .field_bit_size = 10,
3331         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3332         },
3333         {
3334         .field_bit_size = 16,
3335         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3336         },
3337         {
3338         .field_bit_size = 10,
3339         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3340         },
3341         {
3342         .field_bit_size = 1,
3343         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3344         },
3345         {
3346         .field_bit_size = 1,
3347         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3348         },
3349         {
3350         .field_bit_size = 1,
3351         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3352         },
3353         {
3354         .field_bit_size = 1,
3355         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3356         },
3357         {
3358         .field_bit_size = 4,
3359         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3360         },
3361         {
3362         .field_bit_size = 12,
3363         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,
3364         .result_operand = {
3365                 (BNXT_ULP_CF_IDX_PHY_PORT_VPORT >> 8) & 0xff,
3366                 BNXT_ULP_CF_IDX_PHY_PORT_VPORT & 0xff,
3367                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
3368                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
3369         },
3370         {
3371         .field_bit_size = 1,
3372         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3373         },
3374         {
3375         .field_bit_size = 1,
3376         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3377         },
3378         {
3379         .field_bit_size = 2,
3380         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3381         },
3382         {
3383         .field_bit_size = 1,
3384         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3385         },
3386         {
3387         .field_bit_size = 1,
3388         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3389         },
3390         {
3391         .field_bit_size = 1,
3392         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3393         },
3394         {
3395         .field_bit_size = 16,
3396         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3397         },
3398         {
3399         .field_bit_size = 1,
3400         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3401         },
3402         {
3403         .field_bit_size = 1,
3404         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
3405         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
3406                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
3407         },
3408         {
3409         .field_bit_size = 4,
3410         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3411         },
3412         {
3413         .field_bit_size = 8,
3414         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3415         },
3416         {
3417         .field_bit_size = 3,
3418         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3419         },
3420         {
3421         .field_bit_size = 6,
3422         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3423         },
3424         {
3425         .field_bit_size = 3,
3426         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3427         },
3428         {
3429         .field_bit_size = 1,
3430         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
3431         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
3432                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
3433         },
3434         {
3435         .field_bit_size = 16,
3436         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3437         },
3438         {
3439         .field_bit_size = 1,
3440         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
3441         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
3442                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
3443         },
3444         {
3445         .field_bit_size = 2,
3446         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3447         },
3448         {
3449         .field_bit_size = 2,
3450         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3451         },
3452         {
3453         .field_bit_size = 3,
3454         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3455         },
3456         {
3457         .field_bit_size = 3,
3458         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3459         },
3460         {
3461         .field_bit_size = 3,
3462         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3463         },
3464         {
3465         .field_bit_size = 1,
3466         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3467         },
3468         {
3469         .field_bit_size = 4,
3470         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
3471         .result_operand = {
3472                 BNXT_ULP_SYM_ECV_VTAG_TYPE_ADD_1_ENCAP_PRI,
3473                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
3474                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
3475         },
3476         {
3477         .field_bit_size = 1,
3478         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3479         },
3480         {
3481         .field_bit_size = 1,
3482         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
3483         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
3484                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
3485         },
3486         {
3487         .field_bit_size = 16,
3488         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
3489         .result_operand = {0x81, 0x00}
3490         },
3491         {
3492         .field_bit_size = 12,
3493         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,
3494         .result_operand = {
3495                 (BNXT_ULP_CF_IDX_DEV_PORT_ID >> 8) & 0xff,
3496                 BNXT_ULP_CF_IDX_DEV_PORT_ID & 0xff,
3497                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
3498                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
3499         },
3500         {
3501         .field_bit_size = 1,
3502         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3503         },
3504         {
3505         .field_bit_size = 3,
3506         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3507         },
3508         {
3509         .field_bit_size = 80,
3510         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3511         },
3512         {
3513         .field_bit_size = 14,
3514         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3515         },
3516         {
3517         .field_bit_size = 1,
3518         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3519         },
3520         {
3521         .field_bit_size = 1,
3522         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3523         },
3524         {
3525         .field_bit_size = 1,
3526         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3527         },
3528         {
3529         .field_bit_size = 1,
3530         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3531         },
3532         {
3533         .field_bit_size = 8,
3534         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3535         },
3536         {
3537         .field_bit_size = 1,
3538         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3539         },
3540         {
3541         .field_bit_size = 1,
3542         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3543         },
3544         {
3545         .field_bit_size = 11,
3546         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
3547         .result_operand = {
3548                 (BNXT_ULP_REGFILE_INDEX_ENCAP_PTR_0 >> 8) & 0xff,
3549                 BNXT_ULP_REGFILE_INDEX_ENCAP_PTR_0 & 0xff,
3550                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
3551                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
3552         },
3553         {
3554         .field_bit_size = 10,
3555         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3556         },
3557         {
3558         .field_bit_size = 16,
3559         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3560         },
3561         {
3562         .field_bit_size = 10,
3563         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3564         },
3565         {
3566         .field_bit_size = 16,
3567         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3568         },
3569         {
3570         .field_bit_size = 10,
3571         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3572         },
3573         {
3574         .field_bit_size = 1,
3575         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3576         },
3577         {
3578         .field_bit_size = 1,
3579         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3580         },
3581         {
3582         .field_bit_size = 1,
3583         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3584         },
3585         {
3586         .field_bit_size = 1,
3587         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3588         },
3589         {
3590         .field_bit_size = 4,
3591         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3592         },
3593         {
3594         .field_bit_size = 12,
3595         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
3596         .result_operand = {
3597                 (BNXT_ULP_SYM_WH_PLUS_LOOPBACK_PORT >> 8) & 0xff,
3598                 BNXT_ULP_SYM_WH_PLUS_LOOPBACK_PORT & 0xff,
3599                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
3600                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
3601         },
3602         {
3603         .field_bit_size = 1,
3604         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3605         },
3606         {
3607         .field_bit_size = 1,
3608         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3609         },
3610         {
3611         .field_bit_size = 2,
3612         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3613         },
3614         {
3615         .field_bit_size = 1,
3616         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3617         },
3618         {
3619         .field_bit_size = 1,
3620         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3621         },
3622         {
3623         .field_bit_size = 1,
3624         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3625         },
3626         {
3627         .field_bit_size = 16,
3628         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3629         },
3630         {
3631         .field_bit_size = 1,
3632         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3633         },
3634         {
3635         .field_bit_size = 1,
3636         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
3637         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
3638                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
3639         },
3640         {
3641         .field_bit_size = 4,
3642         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3643         },
3644         {
3645         .field_bit_size = 8,
3646         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3647         },
3648         {
3649         .field_bit_size = 3,
3650         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3651         },
3652         {
3653         .field_bit_size = 6,
3654         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3655         },
3656         {
3657         .field_bit_size = 3,
3658         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3659         },
3660         {
3661         .field_bit_size = 1,
3662         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
3663         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
3664                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
3665         },
3666         {
3667         .field_bit_size = 16,
3668         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3669         },
3670         {
3671         .field_bit_size = 1,
3672         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
3673         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
3674                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
3675         },
3676         {
3677         .field_bit_size = 2,
3678         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3679         },
3680         {
3681         .field_bit_size = 2,
3682         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3683         },
3684         {
3685         .field_bit_size = 14,
3686         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3687         },
3688         {
3689         .field_bit_size = 1,
3690         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3691         },
3692         {
3693         .field_bit_size = 1,
3694         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3695         },
3696         {
3697         .field_bit_size = 1,
3698         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3699         },
3700         {
3701         .field_bit_size = 1,
3702         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3703         },
3704         {
3705         .field_bit_size = 8,
3706         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3707         },
3708         {
3709         .field_bit_size = 1,
3710         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3711         },
3712         {
3713         .field_bit_size = 1,
3714         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3715         },
3716         {
3717         .field_bit_size = 11,
3718         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3719         },
3720         {
3721         .field_bit_size = 10,
3722         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3723         },
3724         {
3725         .field_bit_size = 16,
3726         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3727         },
3728         {
3729         .field_bit_size = 10,
3730         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3731         },
3732         {
3733         .field_bit_size = 16,
3734         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3735         },
3736         {
3737         .field_bit_size = 10,
3738         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3739         },
3740         {
3741         .field_bit_size = 1,
3742         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3743         },
3744         {
3745         .field_bit_size = 1,
3746         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3747         },
3748         {
3749         .field_bit_size = 1,
3750         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3751         },
3752         {
3753         .field_bit_size = 1,
3754         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3755         },
3756         {
3757         .field_bit_size = 4,
3758         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3759         },
3760         {
3761         .field_bit_size = 12,
3762         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,
3763         .result_operand = {
3764                 (BNXT_ULP_CF_IDX_VF_FUNC_VNIC >> 8) & 0xff,
3765                 BNXT_ULP_CF_IDX_VF_FUNC_VNIC & 0xff,
3766                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
3767                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
3768         },
3769         {
3770         .field_bit_size = 1,
3771         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
3772         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
3773                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
3774         },
3775         {
3776         .field_bit_size = 1,
3777         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3778         },
3779         {
3780         .field_bit_size = 2,
3781         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3782         },
3783         {
3784         .field_bit_size = 1,
3785         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3786         },
3787         {
3788         .field_bit_size = 1,
3789         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3790         },
3791         {
3792         .field_bit_size = 1,
3793         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3794         },
3795         {
3796         .field_bit_size = 16,
3797         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
3798         .result_operand = {
3799                 (BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR >> 8) & 0xff,
3800                 BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR & 0xff,
3801                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
3802                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
3803         },
3804         {
3805         .field_bit_size = 1,
3806         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3807         },
3808         {
3809         .field_bit_size = 1,
3810         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
3811         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
3812                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
3813         },
3814         {
3815         .field_bit_size = 4,
3816         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3817         },
3818         {
3819         .field_bit_size = 8,
3820         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3821         },
3822         {
3823         .field_bit_size = 3,
3824         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3825         },
3826         {
3827         .field_bit_size = 6,
3828         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3829         },
3830         {
3831         .field_bit_size = 3,
3832         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3833         },
3834         {
3835         .field_bit_size = 1,
3836         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3837         },
3838         {
3839         .field_bit_size = 16,
3840         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3841         },
3842         {
3843         .field_bit_size = 1,
3844         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
3845         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
3846                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
3847         },
3848         {
3849         .field_bit_size = 2,
3850         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3851         },
3852         {
3853         .field_bit_size = 2,
3854         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3855         },
3856         {
3857         .field_bit_size = 16,
3858         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
3859         .result_operand = {
3860                 (BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR >> 8) & 0xff,
3861                 BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR & 0xff,
3862                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
3863                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
3864         },
3865         {
3866         .field_bit_size = 1,
3867         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3868         },
3869         {
3870         .field_bit_size = 1,
3871         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
3872         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
3873                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
3874         },
3875         {
3876         .field_bit_size = 4,
3877         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3878         },
3879         {
3880         .field_bit_size = 8,
3881         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3882         },
3883         {
3884         .field_bit_size = 3,
3885         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3886         },
3887         {
3888         .field_bit_size = 6,
3889         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3890         },
3891         {
3892         .field_bit_size = 3,
3893         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3894         },
3895         {
3896         .field_bit_size = 1,
3897         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3898         },
3899         {
3900         .field_bit_size = 16,
3901         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3902         },
3903         {
3904         .field_bit_size = 1,
3905         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
3906         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
3907                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
3908         },
3909         {
3910         .field_bit_size = 2,
3911         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3912         },
3913         {
3914         .field_bit_size = 2,
3915         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3916         },
3917         {
3918         .field_bit_size = 10,
3919         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
3920         .result_operand = {
3921                 (BNXT_ULP_GLB_REGFILE_INDEX_GLB_L2_CNTXT_ID >> 8) & 0xff,
3922                 BNXT_ULP_GLB_REGFILE_INDEX_GLB_L2_CNTXT_ID & 0xff,
3923                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
3924                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
3925         },
3926         {
3927         .field_bit_size = 7,
3928         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
3929         .result_operand = {
3930                 (BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID >> 8) & 0xff,
3931                 BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID & 0xff,
3932                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
3933                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
3934         },
3935         {
3936         .field_bit_size = 1,
3937         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3938         },
3939         {
3940         .field_bit_size = 4,
3941         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3942         },
3943         {
3944         .field_bit_size = 8,
3945         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3946         },
3947         {
3948         .field_bit_size = 3,
3949         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3950         },
3951         {
3952         .field_bit_size = 6,
3953         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3954         },
3955         {
3956         .field_bit_size = 3,
3957         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3958         },
3959         {
3960         .field_bit_size = 1,
3961         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3962         },
3963         {
3964         .field_bit_size = 16,
3965         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3966         },
3967         {
3968         .field_bit_size = 1,
3969         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
3970         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
3971                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
3972         },
3973         {
3974         .field_bit_size = 2,
3975         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3976         },
3977         {
3978         .field_bit_size = 2,
3979         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3980         },
3981         {
3982         .field_bit_size = 32,
3983         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
3984         .result_operand = {
3985                 (BNXT_ULP_GLB_REGFILE_INDEX_GLB_LB_AREC_PTR >> 8) & 0xff,
3986                 BNXT_ULP_GLB_REGFILE_INDEX_GLB_LB_AREC_PTR & 0xff,
3987                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
3988                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
3989         },
3990         {
3991         .field_bit_size = 32,
3992         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
3993         .result_operand = {
3994                 (BNXT_ULP_GLB_REGFILE_INDEX_GLB_LB_AREC_PTR >> 8) & 0xff,
3995                 BNXT_ULP_GLB_REGFILE_INDEX_GLB_LB_AREC_PTR & 0xff,
3996                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
3997                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
3998         },
3999         {
4000         .field_bit_size = 14,
4001         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4002         },
4003         {
4004         .field_bit_size = 1,
4005         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4006         },
4007         {
4008         .field_bit_size = 1,
4009         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4010         },
4011         {
4012         .field_bit_size = 1,
4013         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4014         },
4015         {
4016         .field_bit_size = 1,
4017         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4018         },
4019         {
4020         .field_bit_size = 8,
4021         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4022         },
4023         {
4024         .field_bit_size = 1,
4025         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4026         },
4027         {
4028         .field_bit_size = 1,
4029         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4030         },
4031         {
4032         .field_bit_size = 11,
4033         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4034         },
4035         {
4036         .field_bit_size = 10,
4037         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4038         },
4039         {
4040         .field_bit_size = 16,
4041         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4042         },
4043         {
4044         .field_bit_size = 10,
4045         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4046         },
4047         {
4048         .field_bit_size = 16,
4049         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4050         },
4051         {
4052         .field_bit_size = 10,
4053         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4054         },
4055         {
4056         .field_bit_size = 1,
4057         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4058         },
4059         {
4060         .field_bit_size = 1,
4061         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4062         },
4063         {
4064         .field_bit_size = 1,
4065         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4066         },
4067         {
4068         .field_bit_size = 1,
4069         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4070         },
4071         {
4072         .field_bit_size = 4,
4073         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4074         },
4075         {
4076         .field_bit_size = 12,
4077         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,
4078         .result_operand = {
4079                 (BNXT_ULP_CF_IDX_DRV_FUNC_VNIC >> 8) & 0xff,
4080                 BNXT_ULP_CF_IDX_DRV_FUNC_VNIC & 0xff,
4081                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
4082                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
4083         },
4084         {
4085         .field_bit_size = 1,
4086         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4087         },
4088         {
4089         .field_bit_size = 1,
4090         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4091         },
4092         {
4093         .field_bit_size = 2,
4094         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4095         },
4096         {
4097         .field_bit_size = 1,
4098         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4099         },
4100         {
4101         .field_bit_size = 1,
4102         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4103         },
4104         {
4105         .field_bit_size = 1,
4106         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4107         },
4108         {
4109         .field_bit_size = 16,
4110         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
4111         .result_operand = {
4112                 (BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR >> 8) & 0xff,
4113                 BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR & 0xff,
4114                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
4115                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
4116         },
4117         {
4118         .field_bit_size = 1,
4119         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4120         },
4121         {
4122         .field_bit_size = 1,
4123         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
4124         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
4125                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
4126         },
4127         {
4128         .field_bit_size = 4,
4129         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4130         },
4131         {
4132         .field_bit_size = 8,
4133         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4134         },
4135         {
4136         .field_bit_size = 3,
4137         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4138         },
4139         {
4140         .field_bit_size = 6,
4141         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4142         },
4143         {
4144         .field_bit_size = 3,
4145         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4146         },
4147         {
4148         .field_bit_size = 1,
4149         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4150         },
4151         {
4152         .field_bit_size = 16,
4153         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4154         },
4155         {
4156         .field_bit_size = 1,
4157         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
4158         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
4159                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
4160         },
4161         {
4162         .field_bit_size = 2,
4163         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4164         },
4165         {
4166         .field_bit_size = 2,
4167         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4168         },
4169         {
4170         .field_bit_size = 3,
4171         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4172         },
4173         {
4174         .field_bit_size = 3,
4175         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4176         },
4177         {
4178         .field_bit_size = 3,
4179         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4180         },
4181         {
4182         .field_bit_size = 1,
4183         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4184         },
4185         {
4186         .field_bit_size = 4,
4187         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
4188         .result_operand = {
4189                 BNXT_ULP_SYM_ECV_VTAG_TYPE_ADD_1_ENCAP_PRI,
4190                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
4191                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
4192         },
4193         {
4194         .field_bit_size = 1,
4195         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4196         },
4197         {
4198         .field_bit_size = 1,
4199         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
4200         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
4201                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
4202         },
4203         {
4204         .field_bit_size = 16,
4205         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
4206         .result_operand = {0x81, 0x00}
4207         },
4208         {
4209         .field_bit_size = 12,
4210         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
4211         .result_operand = {0x01, 0x02}
4212         },
4213         {
4214         .field_bit_size = 1,
4215         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4216         },
4217         {
4218         .field_bit_size = 3,
4219         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4220         },
4221         {
4222         .field_bit_size = 80,
4223         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4224         },
4225         {
4226         .field_bit_size = 14,
4227         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4228         },
4229         {
4230         .field_bit_size = 1,
4231         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4232         },
4233         {
4234         .field_bit_size = 1,
4235         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4236         },
4237         {
4238         .field_bit_size = 1,
4239         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4240         },
4241         {
4242         .field_bit_size = 1,
4243         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4244         },
4245         {
4246         .field_bit_size = 8,
4247         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4248         },
4249         {
4250         .field_bit_size = 1,
4251         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4252         },
4253         {
4254         .field_bit_size = 1,
4255         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4256         },
4257         {
4258         .field_bit_size = 11,
4259         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
4260         .result_operand = {
4261                 (BNXT_ULP_REGFILE_INDEX_ENCAP_PTR_0 >> 8) & 0xff,
4262                 BNXT_ULP_REGFILE_INDEX_ENCAP_PTR_0 & 0xff,
4263                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
4264                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
4265         },
4266         {
4267         .field_bit_size = 10,
4268         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4269         },
4270         {
4271         .field_bit_size = 16,
4272         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4273         },
4274         {
4275         .field_bit_size = 10,
4276         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4277         },
4278         {
4279         .field_bit_size = 16,
4280         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4281         },
4282         {
4283         .field_bit_size = 10,
4284         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4285         },
4286         {
4287         .field_bit_size = 1,
4288         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4289         },
4290         {
4291         .field_bit_size = 1,
4292         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4293         },
4294         {
4295         .field_bit_size = 1,
4296         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4297         },
4298         {
4299         .field_bit_size = 1,
4300         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4301         },
4302         {
4303         .field_bit_size = 4,
4304         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4305         },
4306         {
4307         .field_bit_size = 12,
4308         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,
4309         .result_operand = {
4310                 (BNXT_ULP_CF_IDX_PHY_PORT_VPORT >> 8) & 0xff,
4311                 BNXT_ULP_CF_IDX_PHY_PORT_VPORT & 0xff,
4312                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
4313                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
4314         },
4315         {
4316         .field_bit_size = 1,
4317         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4318         },
4319         {
4320         .field_bit_size = 1,
4321         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4322         },
4323         {
4324         .field_bit_size = 2,
4325         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4326         },
4327         {
4328         .field_bit_size = 1,
4329         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4330         },
4331         {
4332         .field_bit_size = 1,
4333         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4334         },
4335         {
4336         .field_bit_size = 1,
4337         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4338         },
4339         {
4340         .field_bit_size = 16,
4341         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
4342         .result_operand = {
4343                 (BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR >> 8) & 0xff,
4344                 BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR & 0xff,
4345                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
4346                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
4347         },
4348         {
4349         .field_bit_size = 1,
4350         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4351         },
4352         {
4353         .field_bit_size = 1,
4354         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
4355         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
4356                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
4357         },
4358         {
4359         .field_bit_size = 4,
4360         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4361         },
4362         {
4363         .field_bit_size = 8,
4364         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4365         },
4366         {
4367         .field_bit_size = 3,
4368         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4369         },
4370         {
4371         .field_bit_size = 6,
4372         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4373         },
4374         {
4375         .field_bit_size = 3,
4376         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4377         },
4378         {
4379         .field_bit_size = 1,
4380         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4381         },
4382         {
4383         .field_bit_size = 16,
4384         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4385         },
4386         {
4387         .field_bit_size = 1,
4388         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
4389         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
4390                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
4391         },
4392         {
4393         .field_bit_size = 2,
4394         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4395         },
4396         {
4397         .field_bit_size = 2,
4398         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4399         },
4400         {
4401         .field_bit_size = 14,
4402         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4403         },
4404         {
4405         .field_bit_size = 1,
4406         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4407         },
4408         {
4409         .field_bit_size = 1,
4410         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4411         },
4412         {
4413         .field_bit_size = 1,
4414         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4415         },
4416         {
4417         .field_bit_size = 1,
4418         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4419         },
4420         {
4421         .field_bit_size = 8,
4422         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4423         },
4424         {
4425         .field_bit_size = 1,
4426         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4427         },
4428         {
4429         .field_bit_size = 1,
4430         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4431         },
4432         {
4433         .field_bit_size = 11,
4434         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4435         },
4436         {
4437         .field_bit_size = 10,
4438         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4439         },
4440         {
4441         .field_bit_size = 16,
4442         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4443         },
4444         {
4445         .field_bit_size = 10,
4446         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4447         },
4448         {
4449         .field_bit_size = 16,
4450         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4451         },
4452         {
4453         .field_bit_size = 10,
4454         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4455         },
4456         {
4457         .field_bit_size = 1,
4458         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4459         },
4460         {
4461         .field_bit_size = 1,
4462         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4463         },
4464         {
4465         .field_bit_size = 1,
4466         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4467         },
4468         {
4469         .field_bit_size = 1,
4470         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4471         },
4472         {
4473         .field_bit_size = 4,
4474         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4475         },
4476         {
4477         .field_bit_size = 12,
4478         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,
4479         .result_operand = {
4480                 (BNXT_ULP_CF_IDX_VF_FUNC_VNIC >> 8) & 0xff,
4481                 BNXT_ULP_CF_IDX_VF_FUNC_VNIC & 0xff,
4482                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
4483                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
4484         },
4485         {
4486         .field_bit_size = 1,
4487         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
4488         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
4489                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
4490         },
4491         {
4492         .field_bit_size = 1,
4493         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4494         },
4495         {
4496         .field_bit_size = 2,
4497         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4498         },
4499         {
4500         .field_bit_size = 1,
4501         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4502         },
4503         {
4504         .field_bit_size = 1,
4505         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4506         },
4507         {
4508         .field_bit_size = 1,
4509         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4510         },
4511         {
4512         .field_bit_size = 16,
4513         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
4514         .result_operand = {
4515                 (BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR >> 8) & 0xff,
4516                 BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR & 0xff,
4517                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
4518                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
4519         },
4520         {
4521         .field_bit_size = 1,
4522         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4523         },
4524         {
4525         .field_bit_size = 1,
4526         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
4527         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
4528                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
4529         },
4530         {
4531         .field_bit_size = 4,
4532         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4533         },
4534         {
4535         .field_bit_size = 8,
4536         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4537         },
4538         {
4539         .field_bit_size = 3,
4540         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4541         },
4542         {
4543         .field_bit_size = 6,
4544         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4545         },
4546         {
4547         .field_bit_size = 3,
4548         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4549         },
4550         {
4551         .field_bit_size = 1,
4552         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4553         },
4554         {
4555         .field_bit_size = 16,
4556         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4557         },
4558         {
4559         .field_bit_size = 1,
4560         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
4561         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
4562                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
4563         },
4564         {
4565         .field_bit_size = 2,
4566         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4567         },
4568         {
4569         .field_bit_size = 2,
4570         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4571         },
4572         {
4573         .field_bit_size = 16,
4574         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
4575         .result_operand = {
4576                 (BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR >> 8) & 0xff,
4577                 BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR & 0xff,
4578                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
4579                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
4580         },
4581         {
4582         .field_bit_size = 1,
4583         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4584         },
4585         {
4586         .field_bit_size = 1,
4587         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
4588         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
4589                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
4590         },
4591         {
4592         .field_bit_size = 4,
4593         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4594         },
4595         {
4596         .field_bit_size = 8,
4597         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4598         },
4599         {
4600         .field_bit_size = 3,
4601         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4602         },
4603         {
4604         .field_bit_size = 6,
4605         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4606         },
4607         {
4608         .field_bit_size = 3,
4609         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4610         },
4611         {
4612         .field_bit_size = 1,
4613         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4614         },
4615         {
4616         .field_bit_size = 16,
4617         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4618         },
4619         {
4620         .field_bit_size = 1,
4621         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
4622         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
4623                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
4624         },
4625         {
4626         .field_bit_size = 2,
4627         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4628         },
4629         {
4630         .field_bit_size = 2,
4631         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4632         },
4633         {
4634         .field_bit_size = 14,
4635         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4636         },
4637         {
4638         .field_bit_size = 1,
4639         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4640         },
4641         {
4642         .field_bit_size = 1,
4643         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4644         },
4645         {
4646         .field_bit_size = 1,
4647         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4648         },
4649         {
4650         .field_bit_size = 1,
4651         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4652         },
4653         {
4654         .field_bit_size = 8,
4655         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4656         },
4657         {
4658         .field_bit_size = 1,
4659         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4660         },
4661         {
4662         .field_bit_size = 1,
4663         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4664         },
4665         {
4666         .field_bit_size = 11,
4667         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4668         },
4669         {
4670         .field_bit_size = 10,
4671         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4672         },
4673         {
4674         .field_bit_size = 16,
4675         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4676         },
4677         {
4678         .field_bit_size = 10,
4679         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4680         },
4681         {
4682         .field_bit_size = 16,
4683         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4684         },
4685         {
4686         .field_bit_size = 10,
4687         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4688         },
4689         {
4690         .field_bit_size = 1,
4691         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4692         },
4693         {
4694         .field_bit_size = 1,
4695         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4696         },
4697         {
4698         .field_bit_size = 1,
4699         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4700         },
4701         {
4702         .field_bit_size = 1,
4703         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4704         },
4705         {
4706         .field_bit_size = 4,
4707         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4708         },
4709         {
4710         .field_bit_size = 12,
4711         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
4712         .result_operand = {
4713                 (BNXT_ULP_SYM_WH_PLUS_LOOPBACK_PORT >> 8) & 0xff,
4714                 BNXT_ULP_SYM_WH_PLUS_LOOPBACK_PORT & 0xff,
4715                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
4716                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
4717         },
4718         {
4719         .field_bit_size = 1,
4720         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4721         },
4722         {
4723         .field_bit_size = 1,
4724         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4725         },
4726         {
4727         .field_bit_size = 2,
4728         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4729         },
4730         {
4731         .field_bit_size = 1,
4732         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4733         },
4734         {
4735         .field_bit_size = 1,
4736         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4737         },
4738         {
4739         .field_bit_size = 1,
4740         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4741         },
4742         {
4743         .field_bit_size = 10,
4744         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
4745         .result_operand = {
4746                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
4747                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
4748                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
4749                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
4750         },
4751         {
4752         .field_bit_size = 10,
4753         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
4754         .result_operand = {
4755                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
4756                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
4757                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
4758                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
4759         },
4760         {
4761         .field_bit_size = 7,
4762         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
4763         .result_operand = {
4764                 (BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID >> 8) & 0xff,
4765                 BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID & 0xff,
4766                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
4767                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
4768         },
4769         {
4770         .field_bit_size = 1,
4771         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4772         },
4773         {
4774         .field_bit_size = 4,
4775         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4776         },
4777         {
4778         .field_bit_size = 8,
4779         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4780         },
4781         {
4782         .field_bit_size = 3,
4783         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4784         },
4785         {
4786         .field_bit_size = 6,
4787         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4788         },
4789         {
4790         .field_bit_size = 3,
4791         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4792         },
4793         {
4794         .field_bit_size = 1,
4795         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4796         },
4797         {
4798         .field_bit_size = 16,
4799         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4800         },
4801         {
4802         .field_bit_size = 1,
4803         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
4804         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
4805                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
4806         },
4807         {
4808         .field_bit_size = 2,
4809         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4810         },
4811         {
4812         .field_bit_size = 2,
4813         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4814         },
4815         {
4816         .field_bit_size = 10,
4817         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
4818         .result_operand = {
4819                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
4820                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
4821                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
4822                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
4823         },
4824         {
4825         .field_bit_size = 4,
4826         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4827         },
4828         {
4829         .field_bit_size = 8,
4830         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4831         },
4832         {
4833         .field_bit_size = 1,
4834         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4835         },
4836         {
4837         .field_bit_size = 10,
4838         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
4839         .result_operand = {
4840                 (0x00f9 >> 8) & 0xff,
4841                 0x00f9 & 0xff,
4842                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
4843                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
4844         },
4845         {
4846         .field_bit_size = 5,
4847         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
4848         .result_operand = {0x15, 0x00, 0x00, 0x00, 0x00, 0x00,
4849                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
4850         },
4851         {
4852         .field_bit_size = 8,
4853         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
4854         .result_operand = {
4855                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
4856                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
4857                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
4858                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
4859         },
4860         {
4861         .field_bit_size = 1,
4862         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
4863         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
4864                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
4865         },
4866         {
4867         .field_bit_size = 1,
4868         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4869         },
4870         {
4871         .field_bit_size = 33,
4872         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
4873         .result_operand = {
4874                 (BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR >> 8) & 0xff,
4875                 BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR & 0xff,
4876                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
4877                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
4878         },
4879         {
4880         .field_bit_size = 1,
4881         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
4882         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
4883                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
4884         },
4885         {
4886         .field_bit_size = 1,
4887         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4888         },
4889         {
4890         .field_bit_size = 5,
4891         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
4892         .result_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,
4893                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
4894         },
4895         {
4896         .field_bit_size = 9,
4897         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
4898         .result_operand = {
4899                 (0x00c5 >> 8) & 0xff,
4900                 0x00c5 & 0xff,
4901                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
4902                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
4903         },
4904         {
4905         .field_bit_size = 11,
4906         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4907         },
4908         {
4909         .field_bit_size = 2,
4910         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
4911         .result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,
4912                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
4913         },
4914         {
4915         .field_bit_size = 1,
4916         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4917         },
4918         {
4919         .field_bit_size = 1,
4920         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
4921         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
4922                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
4923         },
4924         {
4925         .field_bit_size = 10,
4926         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
4927         .result_operand = {
4928                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
4929                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
4930                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
4931                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
4932         },
4933         {
4934         .field_bit_size = 10,
4935         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
4936         .result_operand = {
4937                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
4938                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
4939                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
4940                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
4941         },
4942         {
4943         .field_bit_size = 7,
4944         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
4945         .result_operand = {
4946                 (BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID >> 8) & 0xff,
4947                 BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID & 0xff,
4948                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
4949                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
4950         },
4951         {
4952         .field_bit_size = 1,
4953         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4954         },
4955         {
4956         .field_bit_size = 4,
4957         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4958         },
4959         {
4960         .field_bit_size = 8,
4961         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4962         },
4963         {
4964         .field_bit_size = 3,
4965         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4966         },
4967         {
4968         .field_bit_size = 6,
4969         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4970         },
4971         {
4972         .field_bit_size = 3,
4973         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4974         },
4975         {
4976         .field_bit_size = 1,
4977         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4978         },
4979         {
4980         .field_bit_size = 16,
4981         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4982         },
4983         {
4984         .field_bit_size = 1,
4985         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
4986         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
4987                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
4988         },
4989         {
4990         .field_bit_size = 2,
4991         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4992         },
4993         {
4994         .field_bit_size = 2,
4995         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4996         },
4997         {
4998         .field_bit_size = 10,
4999         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
5000         .result_operand = {
5001                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
5002                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
5003                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
5004                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
5005         },
5006         {
5007         .field_bit_size = 4,
5008         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5009         },
5010         {
5011         .field_bit_size = 8,
5012         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5013         },
5014         {
5015         .field_bit_size = 1,
5016         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5017         },
5018         {
5019         .field_bit_size = 10,
5020         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
5021         .result_operand = {
5022                 (0x00f9 >> 8) & 0xff,
5023                 0x00f9 & 0xff,
5024                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
5025                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
5026         },
5027         {
5028         .field_bit_size = 5,
5029         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
5030         .result_operand = {0x15, 0x00, 0x00, 0x00, 0x00, 0x00,
5031                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
5032         },
5033         {
5034         .field_bit_size = 8,
5035         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
5036         .result_operand = {
5037                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
5038                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
5039                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
5040                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
5041         },
5042         {
5043         .field_bit_size = 1,
5044         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
5045         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
5046                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
5047         },
5048         {
5049         .field_bit_size = 1,
5050         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5051         },
5052         {
5053         .field_bit_size = 33,
5054         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
5055         .result_operand = {
5056                 (BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR >> 8) & 0xff,
5057                 BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR & 0xff,
5058                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
5059                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
5060         },
5061         {
5062         .field_bit_size = 1,
5063         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
5064         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
5065                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
5066         },
5067         {
5068         .field_bit_size = 1,
5069         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5070         },
5071         {
5072         .field_bit_size = 5,
5073         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
5074         .result_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,
5075                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
5076         },
5077         {
5078         .field_bit_size = 9,
5079         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
5080         .result_operand = {
5081                 (0x00c5 >> 8) & 0xff,
5082                 0x00c5 & 0xff,
5083                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
5084                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
5085         },
5086         {
5087         .field_bit_size = 11,
5088         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5089         },
5090         {
5091         .field_bit_size = 2,
5092         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
5093         .result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,
5094                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
5095         },
5096         {
5097         .field_bit_size = 1,
5098         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5099         },
5100         {
5101         .field_bit_size = 1,
5102         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
5103         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
5104                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
5105         },
5106         {
5107         .field_bit_size = 10,
5108         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
5109         .result_operand = {
5110                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
5111                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
5112                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
5113                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
5114         },
5115         {
5116         .field_bit_size = 10,
5117         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
5118         .result_operand = {
5119                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
5120                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
5121                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
5122                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
5123         },
5124         {
5125         .field_bit_size = 7,
5126         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
5127         .result_operand = {
5128                 (BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID >> 8) & 0xff,
5129                 BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID & 0xff,
5130                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
5131                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
5132         },
5133         {
5134         .field_bit_size = 1,
5135         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5136         },
5137         {
5138         .field_bit_size = 4,
5139         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5140         },
5141         {
5142         .field_bit_size = 8,
5143         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5144         },
5145         {
5146         .field_bit_size = 3,
5147         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5148         },
5149         {
5150         .field_bit_size = 6,
5151         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5152         },
5153         {
5154         .field_bit_size = 3,
5155         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5156         },
5157         {
5158         .field_bit_size = 1,
5159         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5160         },
5161         {
5162         .field_bit_size = 16,
5163         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
5164         .result_operand = {
5165                 (BNXT_ULP_REGFILE_INDEX_MAIN_SP_PTR >> 8) & 0xff,
5166                 BNXT_ULP_REGFILE_INDEX_MAIN_SP_PTR & 0xff,
5167                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
5168                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
5169         },
5170         {
5171         .field_bit_size = 1,
5172         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
5173         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
5174                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
5175         },
5176         {
5177         .field_bit_size = 2,
5178         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5179         },
5180         {
5181         .field_bit_size = 2,
5182         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5183         },
5184         {
5185         .field_bit_size = 10,
5186         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
5187         .result_operand = {
5188                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
5189                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
5190                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
5191                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
5192         },
5193         {
5194         .field_bit_size = 4,
5195         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5196         },
5197         {
5198         .field_bit_size = 8,
5199         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5200         },
5201         {
5202         .field_bit_size = 1,
5203         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5204         },
5205         {
5206         .field_bit_size = 10,
5207         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
5208         .result_operand = {
5209                 (0x00f9 >> 8) & 0xff,
5210                 0x00f9 & 0xff,
5211                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
5212                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
5213         },
5214         {
5215         .field_bit_size = 5,
5216         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
5217         .result_operand = {0x15, 0x00, 0x00, 0x00, 0x00, 0x00,
5218                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
5219         },
5220         {
5221         .field_bit_size = 8,
5222         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
5223         .result_operand = {
5224                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
5225                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
5226                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
5227                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
5228         },
5229         {
5230         .field_bit_size = 1,
5231         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
5232         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
5233                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
5234         },
5235         {
5236         .field_bit_size = 1,
5237         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5238         },
5239         {
5240         .field_bit_size = 33,
5241         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
5242         .result_operand = {
5243                 (BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR >> 8) & 0xff,
5244                 BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR & 0xff,
5245                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
5246                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
5247         },
5248         {
5249         .field_bit_size = 1,
5250         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
5251         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
5252                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
5253         },
5254         {
5255         .field_bit_size = 1,
5256         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5257         },
5258         {
5259         .field_bit_size = 5,
5260         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
5261         .result_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,
5262                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
5263         },
5264         {
5265         .field_bit_size = 9,
5266         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
5267         .result_operand = {
5268                 (0x00c5 >> 8) & 0xff,
5269                 0x00c5 & 0xff,
5270                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
5271                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
5272         },
5273         {
5274         .field_bit_size = 11,
5275         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5276         },
5277         {
5278         .field_bit_size = 2,
5279         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
5280         .result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,
5281                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
5282         },
5283         {
5284         .field_bit_size = 1,
5285         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5286         },
5287         {
5288         .field_bit_size = 1,
5289         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
5290         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
5291                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
5292         }
5293 };
5294
5295 struct bnxt_ulp_mapper_ident_info ulp_ident_list[] = {
5296         {
5297         .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,
5298         .ident_type = TF_IDENT_TYPE_L2_CTXT,
5299         .regfile_idx = BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0,
5300         .ident_bit_size = 10,
5301         .ident_bit_pos = 0
5302         },
5303         {
5304         .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,
5305         .ident_type = TF_IDENT_TYPE_EM_PROF,
5306         .regfile_idx = BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0,
5307         .ident_bit_size = 10,
5308         .ident_bit_pos = 0
5309         },
5310         {
5311         .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,
5312         .ident_type = TF_IDENT_TYPE_L2_CTXT,
5313         .regfile_idx = BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0,
5314         .ident_bit_size = 10,
5315         .ident_bit_pos = 0
5316         },
5317         {
5318         .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,
5319         .ident_type = TF_IDENT_TYPE_EM_PROF,
5320         .regfile_idx = BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0,
5321         .ident_bit_size = 10,
5322         .ident_bit_pos = 0
5323         },
5324         {
5325         .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,
5326         .ident_type = TF_IDENT_TYPE_L2_CTXT,
5327         .regfile_idx = BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0,
5328         .ident_bit_size = 10,
5329         .ident_bit_pos = 0
5330         },
5331         {
5332         .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,
5333         .ident_type = TF_IDENT_TYPE_EM_PROF,
5334         .regfile_idx = BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0,
5335         .ident_bit_size = 10,
5336         .ident_bit_pos = 0
5337         }
5338 };