1 /* SPDX-License-Identifier: BSD-3-Clause
2 * Copyright(c) 2014-2020 Broadcom
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"
11 uint16_t ulp_act_sig_tbl[BNXT_ULP_ACT_SIG_TBL_MAX_SZ] = {
12 [BNXT_ULP_ACT_HID_015a] = 1,
13 [BNXT_ULP_ACT_HID_00eb] = 2,
14 [BNXT_ULP_ACT_HID_0043] = 3,
15 [BNXT_ULP_ACT_HID_03d8] = 4,
16 [BNXT_ULP_ACT_HID_02c1] = 5,
17 [BNXT_ULP_ACT_HID_015e] = 6,
18 [BNXT_ULP_ACT_HID_00ef] = 7,
19 [BNXT_ULP_ACT_HID_0047] = 8,
20 [BNXT_ULP_ACT_HID_03dc] = 9,
21 [BNXT_ULP_ACT_HID_02c5] = 10,
22 [BNXT_ULP_ACT_HID_025b] = 11,
23 [BNXT_ULP_ACT_HID_01ec] = 12,
24 [BNXT_ULP_ACT_HID_0144] = 13,
25 [BNXT_ULP_ACT_HID_04d9] = 14,
26 [BNXT_ULP_ACT_HID_03c2] = 15,
27 [BNXT_ULP_ACT_HID_025f] = 16,
28 [BNXT_ULP_ACT_HID_01f0] = 17,
29 [BNXT_ULP_ACT_HID_0148] = 18,
30 [BNXT_ULP_ACT_HID_04dd] = 19,
31 [BNXT_ULP_ACT_HID_03c6] = 20,
32 [BNXT_ULP_ACT_HID_0000] = 21,
33 [BNXT_ULP_ACT_HID_0002] = 22,
34 [BNXT_ULP_ACT_HID_0800] = 23,
35 [BNXT_ULP_ACT_HID_0101] = 24,
36 [BNXT_ULP_ACT_HID_0020] = 25,
37 [BNXT_ULP_ACT_HID_0901] = 26,
38 [BNXT_ULP_ACT_HID_0121] = 27,
39 [BNXT_ULP_ACT_HID_0004] = 28,
40 [BNXT_ULP_ACT_HID_0006] = 29,
41 [BNXT_ULP_ACT_HID_0804] = 30,
42 [BNXT_ULP_ACT_HID_0105] = 31,
43 [BNXT_ULP_ACT_HID_0024] = 32,
44 [BNXT_ULP_ACT_HID_0905] = 33,
45 [BNXT_ULP_ACT_HID_0125] = 34,
46 [BNXT_ULP_ACT_HID_0001] = 35,
47 [BNXT_ULP_ACT_HID_0005] = 36,
48 [BNXT_ULP_ACT_HID_0009] = 37,
49 [BNXT_ULP_ACT_HID_000d] = 38,
50 [BNXT_ULP_ACT_HID_0021] = 39,
51 [BNXT_ULP_ACT_HID_0029] = 40,
52 [BNXT_ULP_ACT_HID_0025] = 41,
53 [BNXT_ULP_ACT_HID_002d] = 42,
54 [BNXT_ULP_ACT_HID_0801] = 43,
55 [BNXT_ULP_ACT_HID_0809] = 44,
56 [BNXT_ULP_ACT_HID_0805] = 45,
57 [BNXT_ULP_ACT_HID_080d] = 46,
58 [BNXT_ULP_ACT_HID_0c15] = 47,
59 [BNXT_ULP_ACT_HID_0c19] = 48,
60 [BNXT_ULP_ACT_HID_02f6] = 49,
61 [BNXT_ULP_ACT_HID_04f8] = 50,
62 [BNXT_ULP_ACT_HID_01df] = 51,
63 [BNXT_ULP_ACT_HID_07e5] = 52,
64 [BNXT_ULP_ACT_HID_06ce] = 53,
65 [BNXT_ULP_ACT_HID_02fa] = 54,
66 [BNXT_ULP_ACT_HID_04fc] = 55,
67 [BNXT_ULP_ACT_HID_01e3] = 56,
68 [BNXT_ULP_ACT_HID_07e9] = 57,
69 [BNXT_ULP_ACT_HID_06d2] = 58,
70 [BNXT_ULP_ACT_HID_03f7] = 59,
71 [BNXT_ULP_ACT_HID_05f9] = 60,
72 [BNXT_ULP_ACT_HID_02e0] = 61,
73 [BNXT_ULP_ACT_HID_08e6] = 62,
74 [BNXT_ULP_ACT_HID_07cf] = 63,
75 [BNXT_ULP_ACT_HID_03fb] = 64,
76 [BNXT_ULP_ACT_HID_05fd] = 65,
77 [BNXT_ULP_ACT_HID_02e4] = 66,
78 [BNXT_ULP_ACT_HID_08ea] = 67,
79 [BNXT_ULP_ACT_HID_07d3] = 68,
80 [BNXT_ULP_ACT_HID_040d] = 69,
81 [BNXT_ULP_ACT_HID_040f] = 70,
82 [BNXT_ULP_ACT_HID_0413] = 71,
83 [BNXT_ULP_ACT_HID_0567] = 72,
84 [BNXT_ULP_ACT_HID_0a49] = 73,
85 [BNXT_ULP_ACT_HID_050e] = 74,
86 [BNXT_ULP_ACT_HID_0668] = 75,
87 [BNXT_ULP_ACT_HID_0b4a] = 76,
88 [BNXT_ULP_ACT_HID_0411] = 77,
89 [BNXT_ULP_ACT_HID_056b] = 78,
90 [BNXT_ULP_ACT_HID_0a4d] = 79,
91 [BNXT_ULP_ACT_HID_0512] = 80,
92 [BNXT_ULP_ACT_HID_066c] = 81,
93 [BNXT_ULP_ACT_HID_0b4e] = 82
96 struct bnxt_ulp_act_match_info ulp_act_match_list[] = {
98 .act_hid = BNXT_ULP_ACT_HID_015a,
100 BNXT_ULP_ACTION_BIT_SET_IPV4_SRC |
101 BNXT_ULP_FLOW_DIR_BITMASK_ING },
105 .act_hid = BNXT_ULP_ACT_HID_00eb,
107 BNXT_ULP_ACTION_BIT_SET_IPV4_SRC |
108 BNXT_ULP_ACTION_BIT_SET_TP_SRC |
109 BNXT_ULP_FLOW_DIR_BITMASK_ING },
113 .act_hid = BNXT_ULP_ACT_HID_0043,
115 BNXT_ULP_ACTION_BIT_SET_IPV4_DST |
116 BNXT_ULP_FLOW_DIR_BITMASK_ING },
120 .act_hid = BNXT_ULP_ACT_HID_03d8,
122 BNXT_ULP_ACTION_BIT_SET_IPV4_DST |
123 BNXT_ULP_ACTION_BIT_SET_TP_SRC |
124 BNXT_ULP_ACTION_BIT_SET_TP_DST |
125 BNXT_ULP_FLOW_DIR_BITMASK_ING },
129 .act_hid = BNXT_ULP_ACT_HID_02c1,
131 BNXT_ULP_ACTION_BIT_SET_IPV4_SRC |
132 BNXT_ULP_ACTION_BIT_SET_IPV4_DST |
133 BNXT_ULP_ACTION_BIT_SET_TP_SRC |
134 BNXT_ULP_ACTION_BIT_SET_TP_DST |
135 BNXT_ULP_FLOW_DIR_BITMASK_ING },
139 .act_hid = BNXT_ULP_ACT_HID_015e,
141 BNXT_ULP_ACTION_BIT_COUNT |
142 BNXT_ULP_ACTION_BIT_SET_IPV4_SRC |
143 BNXT_ULP_FLOW_DIR_BITMASK_ING },
147 .act_hid = BNXT_ULP_ACT_HID_00ef,
149 BNXT_ULP_ACTION_BIT_COUNT |
150 BNXT_ULP_ACTION_BIT_SET_IPV4_SRC |
151 BNXT_ULP_ACTION_BIT_SET_TP_SRC |
152 BNXT_ULP_FLOW_DIR_BITMASK_ING },
156 .act_hid = BNXT_ULP_ACT_HID_0047,
158 BNXT_ULP_ACTION_BIT_COUNT |
159 BNXT_ULP_ACTION_BIT_SET_IPV4_DST |
160 BNXT_ULP_FLOW_DIR_BITMASK_ING },
164 .act_hid = BNXT_ULP_ACT_HID_03dc,
166 BNXT_ULP_ACTION_BIT_COUNT |
167 BNXT_ULP_ACTION_BIT_SET_IPV4_DST |
168 BNXT_ULP_ACTION_BIT_SET_TP_SRC |
169 BNXT_ULP_ACTION_BIT_SET_TP_DST |
170 BNXT_ULP_FLOW_DIR_BITMASK_ING },
174 .act_hid = BNXT_ULP_ACT_HID_02c5,
176 BNXT_ULP_ACTION_BIT_COUNT |
177 BNXT_ULP_ACTION_BIT_SET_IPV4_SRC |
178 BNXT_ULP_ACTION_BIT_SET_IPV4_DST |
179 BNXT_ULP_ACTION_BIT_SET_TP_SRC |
180 BNXT_ULP_ACTION_BIT_SET_TP_DST |
181 BNXT_ULP_FLOW_DIR_BITMASK_ING },
185 .act_hid = BNXT_ULP_ACT_HID_025b,
187 BNXT_ULP_ACTION_BIT_DEC_TTL |
188 BNXT_ULP_ACTION_BIT_SET_IPV4_SRC |
189 BNXT_ULP_FLOW_DIR_BITMASK_ING },
193 .act_hid = BNXT_ULP_ACT_HID_01ec,
195 BNXT_ULP_ACTION_BIT_DEC_TTL |
196 BNXT_ULP_ACTION_BIT_SET_IPV4_SRC |
197 BNXT_ULP_ACTION_BIT_SET_TP_SRC |
198 BNXT_ULP_FLOW_DIR_BITMASK_ING },
202 .act_hid = BNXT_ULP_ACT_HID_0144,
204 BNXT_ULP_ACTION_BIT_DEC_TTL |
205 BNXT_ULP_ACTION_BIT_SET_IPV4_DST |
206 BNXT_ULP_FLOW_DIR_BITMASK_ING },
210 .act_hid = BNXT_ULP_ACT_HID_04d9,
212 BNXT_ULP_ACTION_BIT_DEC_TTL |
213 BNXT_ULP_ACTION_BIT_SET_IPV4_DST |
214 BNXT_ULP_ACTION_BIT_SET_TP_SRC |
215 BNXT_ULP_ACTION_BIT_SET_TP_DST |
216 BNXT_ULP_FLOW_DIR_BITMASK_ING },
220 .act_hid = BNXT_ULP_ACT_HID_03c2,
222 BNXT_ULP_ACTION_BIT_DEC_TTL |
223 BNXT_ULP_ACTION_BIT_SET_IPV4_SRC |
224 BNXT_ULP_ACTION_BIT_SET_IPV4_DST |
225 BNXT_ULP_ACTION_BIT_SET_TP_SRC |
226 BNXT_ULP_ACTION_BIT_SET_TP_DST |
227 BNXT_ULP_FLOW_DIR_BITMASK_ING },
231 .act_hid = BNXT_ULP_ACT_HID_025f,
233 BNXT_ULP_ACTION_BIT_DEC_TTL |
234 BNXT_ULP_ACTION_BIT_COUNT |
235 BNXT_ULP_ACTION_BIT_SET_IPV4_SRC |
236 BNXT_ULP_FLOW_DIR_BITMASK_ING },
240 .act_hid = BNXT_ULP_ACT_HID_01f0,
242 BNXT_ULP_ACTION_BIT_DEC_TTL |
243 BNXT_ULP_ACTION_BIT_COUNT |
244 BNXT_ULP_ACTION_BIT_SET_IPV4_SRC |
245 BNXT_ULP_ACTION_BIT_SET_TP_SRC |
246 BNXT_ULP_FLOW_DIR_BITMASK_ING },
250 .act_hid = BNXT_ULP_ACT_HID_0148,
252 BNXT_ULP_ACTION_BIT_DEC_TTL |
253 BNXT_ULP_ACTION_BIT_COUNT |
254 BNXT_ULP_ACTION_BIT_SET_IPV4_DST |
255 BNXT_ULP_FLOW_DIR_BITMASK_ING },
259 .act_hid = BNXT_ULP_ACT_HID_04dd,
261 BNXT_ULP_ACTION_BIT_DEC_TTL |
262 BNXT_ULP_ACTION_BIT_COUNT |
263 BNXT_ULP_ACTION_BIT_SET_IPV4_DST |
264 BNXT_ULP_ACTION_BIT_SET_TP_SRC |
265 BNXT_ULP_ACTION_BIT_SET_TP_DST |
266 BNXT_ULP_FLOW_DIR_BITMASK_ING },
270 .act_hid = BNXT_ULP_ACT_HID_03c6,
272 BNXT_ULP_ACTION_BIT_DEC_TTL |
273 BNXT_ULP_ACTION_BIT_COUNT |
274 BNXT_ULP_ACTION_BIT_SET_IPV4_SRC |
275 BNXT_ULP_ACTION_BIT_SET_IPV4_DST |
276 BNXT_ULP_ACTION_BIT_SET_TP_SRC |
277 BNXT_ULP_ACTION_BIT_SET_TP_DST |
278 BNXT_ULP_FLOW_DIR_BITMASK_ING },
282 .act_hid = BNXT_ULP_ACT_HID_0000,
284 BNXT_ULP_FLOW_DIR_BITMASK_ING },
288 .act_hid = BNXT_ULP_ACT_HID_0002,
290 BNXT_ULP_ACTION_BIT_DROP |
291 BNXT_ULP_FLOW_DIR_BITMASK_ING },
295 .act_hid = BNXT_ULP_ACT_HID_0800,
297 BNXT_ULP_ACTION_BIT_POP_VLAN |
298 BNXT_ULP_FLOW_DIR_BITMASK_ING },
302 .act_hid = BNXT_ULP_ACT_HID_0101,
304 BNXT_ULP_ACTION_BIT_DEC_TTL |
305 BNXT_ULP_FLOW_DIR_BITMASK_ING },
309 .act_hid = BNXT_ULP_ACT_HID_0020,
311 BNXT_ULP_ACTION_BIT_VXLAN_DECAP |
312 BNXT_ULP_FLOW_DIR_BITMASK_ING },
316 .act_hid = BNXT_ULP_ACT_HID_0901,
318 BNXT_ULP_ACTION_BIT_DEC_TTL |
319 BNXT_ULP_ACTION_BIT_POP_VLAN |
320 BNXT_ULP_FLOW_DIR_BITMASK_ING },
324 .act_hid = BNXT_ULP_ACT_HID_0121,
326 BNXT_ULP_ACTION_BIT_VXLAN_DECAP |
327 BNXT_ULP_ACTION_BIT_DEC_TTL |
328 BNXT_ULP_FLOW_DIR_BITMASK_ING },
332 .act_hid = BNXT_ULP_ACT_HID_0004,
334 BNXT_ULP_ACTION_BIT_COUNT |
335 BNXT_ULP_FLOW_DIR_BITMASK_ING },
339 .act_hid = BNXT_ULP_ACT_HID_0006,
341 BNXT_ULP_ACTION_BIT_COUNT |
342 BNXT_ULP_ACTION_BIT_DROP |
343 BNXT_ULP_FLOW_DIR_BITMASK_ING },
347 .act_hid = BNXT_ULP_ACT_HID_0804,
349 BNXT_ULP_ACTION_BIT_COUNT |
350 BNXT_ULP_ACTION_BIT_POP_VLAN |
351 BNXT_ULP_FLOW_DIR_BITMASK_ING },
355 .act_hid = BNXT_ULP_ACT_HID_0105,
357 BNXT_ULP_ACTION_BIT_COUNT |
358 BNXT_ULP_ACTION_BIT_DEC_TTL |
359 BNXT_ULP_FLOW_DIR_BITMASK_ING },
363 .act_hid = BNXT_ULP_ACT_HID_0024,
365 BNXT_ULP_ACTION_BIT_COUNT |
366 BNXT_ULP_ACTION_BIT_VXLAN_DECAP |
367 BNXT_ULP_FLOW_DIR_BITMASK_ING },
371 .act_hid = BNXT_ULP_ACT_HID_0905,
373 BNXT_ULP_ACTION_BIT_COUNT |
374 BNXT_ULP_ACTION_BIT_DEC_TTL |
375 BNXT_ULP_ACTION_BIT_POP_VLAN |
376 BNXT_ULP_FLOW_DIR_BITMASK_ING },
380 .act_hid = BNXT_ULP_ACT_HID_0125,
382 BNXT_ULP_ACTION_BIT_COUNT |
383 BNXT_ULP_ACTION_BIT_VXLAN_DECAP |
384 BNXT_ULP_ACTION_BIT_DEC_TTL |
385 BNXT_ULP_FLOW_DIR_BITMASK_ING },
389 .act_hid = BNXT_ULP_ACT_HID_0001,
391 BNXT_ULP_ACTION_BIT_MARK |
392 BNXT_ULP_FLOW_DIR_BITMASK_ING },
396 .act_hid = BNXT_ULP_ACT_HID_0005,
398 BNXT_ULP_ACTION_BIT_MARK |
399 BNXT_ULP_ACTION_BIT_COUNT |
400 BNXT_ULP_FLOW_DIR_BITMASK_ING },
404 .act_hid = BNXT_ULP_ACT_HID_0009,
406 BNXT_ULP_ACTION_BIT_MARK |
407 BNXT_ULP_ACTION_BIT_RSS |
408 BNXT_ULP_FLOW_DIR_BITMASK_ING },
412 .act_hid = BNXT_ULP_ACT_HID_000d,
414 BNXT_ULP_ACTION_BIT_MARK |
415 BNXT_ULP_ACTION_BIT_RSS |
416 BNXT_ULP_ACTION_BIT_COUNT |
417 BNXT_ULP_FLOW_DIR_BITMASK_ING },
421 .act_hid = BNXT_ULP_ACT_HID_0021,
423 BNXT_ULP_ACTION_BIT_MARK |
424 BNXT_ULP_ACTION_BIT_VXLAN_DECAP |
425 BNXT_ULP_FLOW_DIR_BITMASK_ING },
429 .act_hid = BNXT_ULP_ACT_HID_0029,
431 BNXT_ULP_ACTION_BIT_MARK |
432 BNXT_ULP_ACTION_BIT_RSS |
433 BNXT_ULP_ACTION_BIT_VXLAN_DECAP |
434 BNXT_ULP_FLOW_DIR_BITMASK_ING },
438 .act_hid = BNXT_ULP_ACT_HID_0025,
440 BNXT_ULP_ACTION_BIT_MARK |
441 BNXT_ULP_ACTION_BIT_COUNT |
442 BNXT_ULP_ACTION_BIT_VXLAN_DECAP |
443 BNXT_ULP_FLOW_DIR_BITMASK_ING },
447 .act_hid = BNXT_ULP_ACT_HID_002d,
449 BNXT_ULP_ACTION_BIT_MARK |
450 BNXT_ULP_ACTION_BIT_RSS |
451 BNXT_ULP_ACTION_BIT_COUNT |
452 BNXT_ULP_ACTION_BIT_VXLAN_DECAP |
453 BNXT_ULP_FLOW_DIR_BITMASK_ING },
457 .act_hid = BNXT_ULP_ACT_HID_0801,
459 BNXT_ULP_ACTION_BIT_MARK |
460 BNXT_ULP_ACTION_BIT_POP_VLAN |
461 BNXT_ULP_FLOW_DIR_BITMASK_ING },
465 .act_hid = BNXT_ULP_ACT_HID_0809,
467 BNXT_ULP_ACTION_BIT_MARK |
468 BNXT_ULP_ACTION_BIT_RSS |
469 BNXT_ULP_ACTION_BIT_POP_VLAN |
470 BNXT_ULP_FLOW_DIR_BITMASK_ING },
474 .act_hid = BNXT_ULP_ACT_HID_0805,
476 BNXT_ULP_ACTION_BIT_MARK |
477 BNXT_ULP_ACTION_BIT_COUNT |
478 BNXT_ULP_ACTION_BIT_POP_VLAN |
479 BNXT_ULP_FLOW_DIR_BITMASK_ING },
483 .act_hid = BNXT_ULP_ACT_HID_080d,
485 BNXT_ULP_ACTION_BIT_MARK |
486 BNXT_ULP_ACTION_BIT_RSS |
487 BNXT_ULP_ACTION_BIT_COUNT |
488 BNXT_ULP_ACTION_BIT_POP_VLAN |
489 BNXT_ULP_FLOW_DIR_BITMASK_ING },
493 .act_hid = BNXT_ULP_ACT_HID_0c15,
495 BNXT_ULP_ACTION_BIT_VXLAN_ENCAP |
496 BNXT_ULP_FLOW_DIR_BITMASK_EGR },
500 .act_hid = BNXT_ULP_ACT_HID_0c19,
502 BNXT_ULP_ACTION_BIT_VXLAN_ENCAP |
503 BNXT_ULP_ACTION_BIT_COUNT |
504 BNXT_ULP_FLOW_DIR_BITMASK_EGR },
508 .act_hid = BNXT_ULP_ACT_HID_02f6,
510 BNXT_ULP_ACTION_BIT_SET_IPV4_SRC |
511 BNXT_ULP_FLOW_DIR_BITMASK_EGR },
515 .act_hid = BNXT_ULP_ACT_HID_04f8,
517 BNXT_ULP_ACTION_BIT_SET_IPV4_SRC |
518 BNXT_ULP_ACTION_BIT_SET_TP_SRC |
519 BNXT_ULP_FLOW_DIR_BITMASK_EGR },
523 .act_hid = BNXT_ULP_ACT_HID_01df,
525 BNXT_ULP_ACTION_BIT_SET_IPV4_DST |
526 BNXT_ULP_FLOW_DIR_BITMASK_EGR },
530 .act_hid = BNXT_ULP_ACT_HID_07e5,
532 BNXT_ULP_ACTION_BIT_SET_IPV4_DST |
533 BNXT_ULP_ACTION_BIT_SET_TP_SRC |
534 BNXT_ULP_ACTION_BIT_SET_TP_DST |
535 BNXT_ULP_FLOW_DIR_BITMASK_EGR },
539 .act_hid = BNXT_ULP_ACT_HID_06ce,
541 BNXT_ULP_ACTION_BIT_SET_IPV4_SRC |
542 BNXT_ULP_ACTION_BIT_SET_IPV4_DST |
543 BNXT_ULP_ACTION_BIT_SET_TP_SRC |
544 BNXT_ULP_ACTION_BIT_SET_TP_DST |
545 BNXT_ULP_FLOW_DIR_BITMASK_EGR },
549 .act_hid = BNXT_ULP_ACT_HID_02fa,
551 BNXT_ULP_ACTION_BIT_COUNT |
552 BNXT_ULP_ACTION_BIT_SET_IPV4_SRC |
553 BNXT_ULP_FLOW_DIR_BITMASK_EGR },
557 .act_hid = BNXT_ULP_ACT_HID_04fc,
559 BNXT_ULP_ACTION_BIT_COUNT |
560 BNXT_ULP_ACTION_BIT_SET_IPV4_SRC |
561 BNXT_ULP_ACTION_BIT_SET_TP_SRC |
562 BNXT_ULP_FLOW_DIR_BITMASK_EGR },
566 .act_hid = BNXT_ULP_ACT_HID_01e3,
568 BNXT_ULP_ACTION_BIT_COUNT |
569 BNXT_ULP_ACTION_BIT_SET_IPV4_DST |
570 BNXT_ULP_FLOW_DIR_BITMASK_EGR },
574 .act_hid = BNXT_ULP_ACT_HID_07e9,
576 BNXT_ULP_ACTION_BIT_COUNT |
577 BNXT_ULP_ACTION_BIT_SET_IPV4_DST |
578 BNXT_ULP_ACTION_BIT_SET_TP_SRC |
579 BNXT_ULP_ACTION_BIT_SET_TP_DST |
580 BNXT_ULP_FLOW_DIR_BITMASK_EGR },
584 .act_hid = BNXT_ULP_ACT_HID_06d2,
586 BNXT_ULP_ACTION_BIT_COUNT |
587 BNXT_ULP_ACTION_BIT_SET_IPV4_SRC |
588 BNXT_ULP_ACTION_BIT_SET_IPV4_DST |
589 BNXT_ULP_ACTION_BIT_SET_TP_SRC |
590 BNXT_ULP_ACTION_BIT_SET_TP_DST |
591 BNXT_ULP_FLOW_DIR_BITMASK_EGR },
595 .act_hid = BNXT_ULP_ACT_HID_03f7,
597 BNXT_ULP_ACTION_BIT_DEC_TTL |
598 BNXT_ULP_ACTION_BIT_SET_IPV4_SRC |
599 BNXT_ULP_FLOW_DIR_BITMASK_EGR },
603 .act_hid = BNXT_ULP_ACT_HID_05f9,
605 BNXT_ULP_ACTION_BIT_DEC_TTL |
606 BNXT_ULP_ACTION_BIT_SET_IPV4_SRC |
607 BNXT_ULP_ACTION_BIT_SET_TP_SRC |
608 BNXT_ULP_FLOW_DIR_BITMASK_EGR },
612 .act_hid = BNXT_ULP_ACT_HID_02e0,
614 BNXT_ULP_ACTION_BIT_DEC_TTL |
615 BNXT_ULP_ACTION_BIT_SET_IPV4_DST |
616 BNXT_ULP_FLOW_DIR_BITMASK_EGR },
620 .act_hid = BNXT_ULP_ACT_HID_08e6,
622 BNXT_ULP_ACTION_BIT_DEC_TTL |
623 BNXT_ULP_ACTION_BIT_SET_IPV4_DST |
624 BNXT_ULP_ACTION_BIT_SET_TP_SRC |
625 BNXT_ULP_ACTION_BIT_SET_TP_DST |
626 BNXT_ULP_FLOW_DIR_BITMASK_EGR },
630 .act_hid = BNXT_ULP_ACT_HID_07cf,
632 BNXT_ULP_ACTION_BIT_DEC_TTL |
633 BNXT_ULP_ACTION_BIT_SET_IPV4_SRC |
634 BNXT_ULP_ACTION_BIT_SET_IPV4_DST |
635 BNXT_ULP_ACTION_BIT_SET_TP_SRC |
636 BNXT_ULP_ACTION_BIT_SET_TP_DST |
637 BNXT_ULP_FLOW_DIR_BITMASK_EGR },
641 .act_hid = BNXT_ULP_ACT_HID_03fb,
643 BNXT_ULP_ACTION_BIT_DEC_TTL |
644 BNXT_ULP_ACTION_BIT_COUNT |
645 BNXT_ULP_ACTION_BIT_SET_IPV4_SRC |
646 BNXT_ULP_FLOW_DIR_BITMASK_EGR },
650 .act_hid = BNXT_ULP_ACT_HID_05fd,
652 BNXT_ULP_ACTION_BIT_DEC_TTL |
653 BNXT_ULP_ACTION_BIT_COUNT |
654 BNXT_ULP_ACTION_BIT_SET_IPV4_SRC |
655 BNXT_ULP_ACTION_BIT_SET_TP_SRC |
656 BNXT_ULP_FLOW_DIR_BITMASK_EGR },
660 .act_hid = BNXT_ULP_ACT_HID_02e4,
662 BNXT_ULP_ACTION_BIT_DEC_TTL |
663 BNXT_ULP_ACTION_BIT_COUNT |
664 BNXT_ULP_ACTION_BIT_SET_IPV4_DST |
665 BNXT_ULP_FLOW_DIR_BITMASK_EGR },
669 .act_hid = BNXT_ULP_ACT_HID_08ea,
671 BNXT_ULP_ACTION_BIT_DEC_TTL |
672 BNXT_ULP_ACTION_BIT_COUNT |
673 BNXT_ULP_ACTION_BIT_SET_IPV4_DST |
674 BNXT_ULP_ACTION_BIT_SET_TP_SRC |
675 BNXT_ULP_ACTION_BIT_SET_TP_DST |
676 BNXT_ULP_FLOW_DIR_BITMASK_EGR },
680 .act_hid = BNXT_ULP_ACT_HID_07d3,
682 BNXT_ULP_ACTION_BIT_DEC_TTL |
683 BNXT_ULP_ACTION_BIT_COUNT |
684 BNXT_ULP_ACTION_BIT_SET_IPV4_SRC |
685 BNXT_ULP_ACTION_BIT_SET_IPV4_DST |
686 BNXT_ULP_ACTION_BIT_SET_TP_SRC |
687 BNXT_ULP_ACTION_BIT_SET_TP_DST |
688 BNXT_ULP_FLOW_DIR_BITMASK_EGR },
692 .act_hid = BNXT_ULP_ACT_HID_040d,
694 BNXT_ULP_FLOW_DIR_BITMASK_EGR },
698 .act_hid = BNXT_ULP_ACT_HID_040f,
700 BNXT_ULP_ACTION_BIT_DROP |
701 BNXT_ULP_FLOW_DIR_BITMASK_EGR },
705 .act_hid = BNXT_ULP_ACT_HID_0413,
707 BNXT_ULP_ACTION_BIT_DROP |
708 BNXT_ULP_ACTION_BIT_COUNT |
709 BNXT_ULP_FLOW_DIR_BITMASK_EGR },
713 .act_hid = BNXT_ULP_ACT_HID_0567,
715 BNXT_ULP_ACTION_BIT_SET_VLAN_PCP |
716 BNXT_ULP_ACTION_BIT_SET_VLAN_VID |
717 BNXT_ULP_ACTION_BIT_PUSH_VLAN |
718 BNXT_ULP_FLOW_DIR_BITMASK_EGR },
722 .act_hid = BNXT_ULP_ACT_HID_0a49,
724 BNXT_ULP_ACTION_BIT_SET_VLAN_VID |
725 BNXT_ULP_ACTION_BIT_PUSH_VLAN |
726 BNXT_ULP_FLOW_DIR_BITMASK_EGR },
730 .act_hid = BNXT_ULP_ACT_HID_050e,
732 BNXT_ULP_ACTION_BIT_DEC_TTL |
733 BNXT_ULP_FLOW_DIR_BITMASK_EGR },
737 .act_hid = BNXT_ULP_ACT_HID_0668,
739 BNXT_ULP_ACTION_BIT_DEC_TTL |
740 BNXT_ULP_ACTION_BIT_SET_VLAN_PCP |
741 BNXT_ULP_ACTION_BIT_SET_VLAN_VID |
742 BNXT_ULP_ACTION_BIT_PUSH_VLAN |
743 BNXT_ULP_FLOW_DIR_BITMASK_EGR },
747 .act_hid = BNXT_ULP_ACT_HID_0b4a,
749 BNXT_ULP_ACTION_BIT_DEC_TTL |
750 BNXT_ULP_ACTION_BIT_SET_VLAN_VID |
751 BNXT_ULP_ACTION_BIT_PUSH_VLAN |
752 BNXT_ULP_FLOW_DIR_BITMASK_EGR },
756 .act_hid = BNXT_ULP_ACT_HID_0411,
758 BNXT_ULP_ACTION_BIT_COUNT |
759 BNXT_ULP_FLOW_DIR_BITMASK_EGR },
763 .act_hid = BNXT_ULP_ACT_HID_056b,
765 BNXT_ULP_ACTION_BIT_COUNT |
766 BNXT_ULP_ACTION_BIT_SET_VLAN_PCP |
767 BNXT_ULP_ACTION_BIT_SET_VLAN_VID |
768 BNXT_ULP_ACTION_BIT_PUSH_VLAN |
769 BNXT_ULP_FLOW_DIR_BITMASK_EGR },
773 .act_hid = BNXT_ULP_ACT_HID_0a4d,
775 BNXT_ULP_ACTION_BIT_COUNT |
776 BNXT_ULP_ACTION_BIT_SET_VLAN_VID |
777 BNXT_ULP_ACTION_BIT_PUSH_VLAN |
778 BNXT_ULP_FLOW_DIR_BITMASK_EGR },
782 .act_hid = BNXT_ULP_ACT_HID_0512,
784 BNXT_ULP_ACTION_BIT_COUNT |
785 BNXT_ULP_ACTION_BIT_DEC_TTL |
786 BNXT_ULP_FLOW_DIR_BITMASK_EGR },
790 .act_hid = BNXT_ULP_ACT_HID_066c,
792 BNXT_ULP_ACTION_BIT_COUNT |
793 BNXT_ULP_ACTION_BIT_DEC_TTL |
794 BNXT_ULP_ACTION_BIT_SET_VLAN_PCP |
795 BNXT_ULP_ACTION_BIT_SET_VLAN_VID |
796 BNXT_ULP_ACTION_BIT_PUSH_VLAN |
797 BNXT_ULP_FLOW_DIR_BITMASK_EGR },
801 .act_hid = BNXT_ULP_ACT_HID_0b4e,
803 BNXT_ULP_ACTION_BIT_COUNT |
804 BNXT_ULP_ACTION_BIT_DEC_TTL |
805 BNXT_ULP_ACTION_BIT_SET_VLAN_VID |
806 BNXT_ULP_ACTION_BIT_PUSH_VLAN |
807 BNXT_ULP_FLOW_DIR_BITMASK_EGR },
812 struct bnxt_ulp_mapper_tbl_list_info ulp_act_tmpl_list[] = {
813 [((1 << BNXT_ULP_LOG2_MAX_NUM_DEV) |
814 BNXT_ULP_DEVICE_ID_WH_PLUS)] = {
815 .device_name = BNXT_ULP_DEVICE_ID_WH_PLUS,
818 .flow_db_table_type = BNXT_ULP_FDB_TYPE_REGULAR
820 [((2 << BNXT_ULP_LOG2_MAX_NUM_DEV) |
821 BNXT_ULP_DEVICE_ID_WH_PLUS)] = {
822 .device_name = BNXT_ULP_DEVICE_ID_WH_PLUS,
825 .flow_db_table_type = BNXT_ULP_FDB_TYPE_REGULAR
827 [((3 << BNXT_ULP_LOG2_MAX_NUM_DEV) |
828 BNXT_ULP_DEVICE_ID_WH_PLUS)] = {
829 .device_name = BNXT_ULP_DEVICE_ID_WH_PLUS,
832 .flow_db_table_type = BNXT_ULP_FDB_TYPE_REGULAR
834 [((4 << BNXT_ULP_LOG2_MAX_NUM_DEV) |
835 BNXT_ULP_DEVICE_ID_WH_PLUS)] = {
836 .device_name = BNXT_ULP_DEVICE_ID_WH_PLUS,
839 .flow_db_table_type = BNXT_ULP_FDB_TYPE_REGULAR
841 [((5 << BNXT_ULP_LOG2_MAX_NUM_DEV) |
842 BNXT_ULP_DEVICE_ID_WH_PLUS)] = {
843 .device_name = BNXT_ULP_DEVICE_ID_WH_PLUS,
846 .flow_db_table_type = BNXT_ULP_FDB_TYPE_REGULAR
848 [((6 << BNXT_ULP_LOG2_MAX_NUM_DEV) |
849 BNXT_ULP_DEVICE_ID_WH_PLUS)] = {
850 .device_name = BNXT_ULP_DEVICE_ID_WH_PLUS,
853 .flow_db_table_type = BNXT_ULP_FDB_TYPE_REGULAR
857 struct bnxt_ulp_mapper_tbl_info ulp_act_tbl_list[] = {
859 .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
860 .resource_type = TF_TBL_TYPE_ACT_STATS_64,
862 BNXT_ULP_RESOURCE_SUB_TYPE_INDEX_TYPE_INT_COUNT,
863 .cond_opcode = BNXT_ULP_COND_OPCODE_ACTION_BIT_IS_SET,
864 .cond_operand = BNXT_ULP_ACTION_BIT_COUNT,
865 .direction = TF_DIR_RX,
866 .srch_b4_alloc = BNXT_ULP_SEARCH_BEFORE_ALLOC_NO,
867 .result_start_idx = 0,
868 .result_bit_size = 64,
869 .result_num_fields = 1,
870 .encap_num_fields = 0,
871 .index_opcode = BNXT_ULP_INDEX_OPCODE_ALLOCATE,
872 .index_operand = BNXT_ULP_REGFILE_INDEX_FLOW_CNTR_PTR_0,
873 .mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP
876 .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
877 .resource_type = TF_TBL_TYPE_ACT_MODIFY_IPV4,
879 BNXT_ULP_RESOURCE_SUB_TYPE_INDEX_TYPE_NORMAL,
880 .cond_opcode = BNXT_ULP_COND_OPCODE_ACTION_BIT_IS_SET,
881 .cond_operand = BNXT_ULP_ACTION_BIT_SET_IPV4_SRC,
882 .direction = TF_DIR_RX,
883 .srch_b4_alloc = BNXT_ULP_SEARCH_BEFORE_ALLOC_NO,
884 .result_start_idx = 1,
885 .result_bit_size = 32,
886 .result_num_fields = 1,
887 .encap_num_fields = 0,
888 .index_opcode = BNXT_ULP_INDEX_OPCODE_ALLOCATE,
889 .index_operand = BNXT_ULP_REGFILE_INDEX_MODIFY_IPV4_SRC_PTR_0,
890 .mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP
893 .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
894 .resource_type = TF_TBL_TYPE_ACT_MODIFY_IPV4,
896 BNXT_ULP_RESOURCE_SUB_TYPE_INDEX_TYPE_NORMAL,
897 .cond_opcode = BNXT_ULP_COND_OPCODE_ACTION_BIT_IS_SET,
898 .cond_operand = BNXT_ULP_ACTION_BIT_SET_IPV4_DST,
899 .direction = TF_DIR_RX,
900 .srch_b4_alloc = BNXT_ULP_SEARCH_BEFORE_ALLOC_NO,
901 .result_start_idx = 2,
902 .result_bit_size = 32,
903 .result_num_fields = 1,
904 .encap_num_fields = 0,
905 .index_opcode = BNXT_ULP_INDEX_OPCODE_ALLOCATE,
906 .index_operand = BNXT_ULP_REGFILE_INDEX_MODIFY_IPV4_DST_PTR_0,
907 .mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP
910 .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
911 .resource_type = TF_TBL_TYPE_ACT_ENCAP_16B,
913 BNXT_ULP_RESOURCE_SUB_TYPE_INDEX_TYPE_NORMAL,
914 .direction = TF_DIR_RX,
915 .srch_b4_alloc = BNXT_ULP_SEARCH_BEFORE_ALLOC_NO,
916 .result_start_idx = 3,
917 .result_bit_size = 0,
918 .result_num_fields = 0,
919 .encap_num_fields = 12,
920 .index_opcode = BNXT_ULP_INDEX_OPCODE_GLOBAL,
921 .index_operand = BNXT_ULP_GLB_REGFILE_INDEX_ENCAP_MAC_PTR,
922 .mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP
925 .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
926 .resource_type = TF_TBL_TYPE_FULL_ACT_RECORD,
928 BNXT_ULP_RESOURCE_SUB_TYPE_INDEX_TYPE_NORMAL,
929 .direction = TF_DIR_RX,
930 .srch_b4_alloc = BNXT_ULP_SEARCH_BEFORE_ALLOC_NO,
931 .result_start_idx = 15,
932 .result_bit_size = 128,
933 .result_num_fields = 26,
934 .encap_num_fields = 0,
935 .index_opcode = BNXT_ULP_INDEX_OPCODE_ALLOCATE,
936 .index_operand = BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR,
937 .mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP
940 .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
941 .resource_type = TF_TBL_TYPE_ACT_STATS_64,
943 BNXT_ULP_RESOURCE_SUB_TYPE_INDEX_TYPE_INT_COUNT,
944 .cond_opcode = BNXT_ULP_COND_OPCODE_ACTION_BIT_IS_SET,
945 .cond_operand = BNXT_ULP_ACTION_BIT_COUNT,
946 .direction = TF_DIR_RX,
947 .srch_b4_alloc = BNXT_ULP_SEARCH_BEFORE_ALLOC_NO,
948 .result_start_idx = 41,
949 .result_bit_size = 64,
950 .result_num_fields = 1,
951 .encap_num_fields = 0,
952 .index_opcode = BNXT_ULP_INDEX_OPCODE_ALLOCATE,
953 .index_operand = BNXT_ULP_REGFILE_INDEX_FLOW_CNTR_PTR_0,
954 .mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP
957 .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
958 .resource_type = TF_TBL_TYPE_FULL_ACT_RECORD,
960 BNXT_ULP_RESOURCE_SUB_TYPE_INDEX_TYPE_NORMAL,
961 .direction = TF_DIR_RX,
962 .srch_b4_alloc = BNXT_ULP_SEARCH_BEFORE_ALLOC_NO,
963 .result_start_idx = 42,
964 .result_bit_size = 128,
965 .result_num_fields = 26,
966 .encap_num_fields = 0,
967 .index_opcode = BNXT_ULP_INDEX_OPCODE_ALLOCATE,
968 .index_operand = BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR,
969 .mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP
972 .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
973 .resource_type = TF_TBL_TYPE_ACT_STATS_64,
975 BNXT_ULP_RESOURCE_SUB_TYPE_INDEX_TYPE_INT_COUNT,
976 .cond_opcode = BNXT_ULP_COND_OPCODE_ACTION_BIT_IS_SET,
977 .cond_operand = BNXT_ULP_ACTION_BIT_COUNT,
978 .direction = TF_DIR_RX,
979 .srch_b4_alloc = BNXT_ULP_SEARCH_BEFORE_ALLOC_NO,
980 .result_start_idx = 68,
981 .result_bit_size = 64,
982 .result_num_fields = 1,
983 .encap_num_fields = 0,
984 .index_opcode = BNXT_ULP_INDEX_OPCODE_ALLOCATE,
985 .index_operand = BNXT_ULP_REGFILE_INDEX_FLOW_CNTR_PTR_0,
986 .mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP
989 .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
990 .resource_type = TF_TBL_TYPE_FULL_ACT_RECORD,
992 BNXT_ULP_RESOURCE_SUB_TYPE_INDEX_TYPE_NORMAL,
993 .direction = TF_DIR_RX,
994 .srch_b4_alloc = BNXT_ULP_SEARCH_BEFORE_ALLOC_NO,
995 .result_start_idx = 69,
996 .result_bit_size = 128,
997 .result_num_fields = 26,
998 .encap_num_fields = 0,
999 .index_opcode = BNXT_ULP_INDEX_OPCODE_ALLOCATE,
1000 .index_operand = BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR,
1001 .mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP
1004 .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
1005 .resource_type = TF_TBL_TYPE_ACT_STATS_64,
1006 .resource_sub_type =
1007 BNXT_ULP_RESOURCE_SUB_TYPE_INDEX_TYPE_INT_COUNT,
1008 .cond_opcode = BNXT_ULP_COND_OPCODE_ACTION_BIT_IS_SET,
1009 .cond_operand = BNXT_ULP_ACTION_BIT_COUNT,
1010 .direction = TF_DIR_TX,
1011 .srch_b4_alloc = BNXT_ULP_SEARCH_BEFORE_ALLOC_NO,
1012 .result_start_idx = 95,
1013 .result_bit_size = 64,
1014 .result_num_fields = 1,
1015 .encap_num_fields = 0,
1016 .index_opcode = BNXT_ULP_INDEX_OPCODE_ALLOCATE,
1017 .index_operand = BNXT_ULP_REGFILE_INDEX_FLOW_CNTR_PTR_0,
1018 .mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP
1021 .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
1022 .resource_type = TF_TBL_TYPE_ACT_SP_SMAC_IPV4,
1023 .resource_sub_type =
1024 BNXT_ULP_RESOURCE_SUB_TYPE_INDEX_TYPE_NORMAL,
1025 .cond_opcode = BNXT_ULP_COND_OPCODE_COMP_FIELD_IS_SET,
1026 .cond_operand = BNXT_ULP_CF_IDX_ACT_ENCAP_IPV4_FLAG,
1027 .direction = TF_DIR_TX,
1028 .srch_b4_alloc = BNXT_ULP_SEARCH_BEFORE_ALLOC_SEARCH_IF_HIT_SKIP,
1029 .result_start_idx = 96,
1030 .result_bit_size = 0,
1031 .result_num_fields = 0,
1032 .encap_num_fields = 3,
1033 .index_opcode = BNXT_ULP_INDEX_OPCODE_ALLOCATE,
1034 .index_operand = BNXT_ULP_REGFILE_INDEX_MAIN_SP_PTR,
1035 .mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP
1038 .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
1039 .resource_type = TF_TBL_TYPE_ACT_SP_SMAC_IPV4,
1040 .resource_sub_type =
1041 BNXT_ULP_RESOURCE_SUB_TYPE_INDEX_TYPE_NORMAL,
1042 .cond_opcode = BNXT_ULP_COND_OPCODE_COMP_FIELD_IS_SET,
1043 .cond_operand = BNXT_ULP_CF_IDX_ACT_ENCAP_IPV6_FLAG,
1044 .direction = TF_DIR_TX,
1045 .srch_b4_alloc = BNXT_ULP_SEARCH_BEFORE_ALLOC_SEARCH_IF_HIT_SKIP,
1046 .result_start_idx = 99,
1047 .result_bit_size = 0,
1048 .result_num_fields = 0,
1049 .encap_num_fields = 3,
1050 .index_opcode = BNXT_ULP_INDEX_OPCODE_ALLOCATE,
1051 .index_operand = BNXT_ULP_REGFILE_INDEX_MAIN_SP_PTR,
1052 .mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP
1055 .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
1056 .resource_type = TF_TBL_TYPE_ACT_ENCAP_64B,
1057 .resource_sub_type =
1058 BNXT_ULP_RESOURCE_SUB_TYPE_INDEX_TYPE_NORMAL,
1059 .direction = TF_DIR_TX,
1060 .srch_b4_alloc = BNXT_ULP_SEARCH_BEFORE_ALLOC_SEARCH_IF_HIT_SKIP,
1061 .result_start_idx = 102,
1062 .result_bit_size = 0,
1063 .result_num_fields = 0,
1064 .encap_num_fields = 12,
1065 .index_opcode = BNXT_ULP_INDEX_OPCODE_ALLOCATE,
1066 .index_operand = BNXT_ULP_REGFILE_INDEX_ENCAP_PTR_0,
1067 .mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP
1070 .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
1071 .resource_type = TF_TBL_TYPE_FULL_ACT_RECORD,
1072 .resource_sub_type =
1073 BNXT_ULP_RESOURCE_SUB_TYPE_INDEX_TYPE_NORMAL,
1074 .direction = TF_DIR_TX,
1075 .srch_b4_alloc = BNXT_ULP_SEARCH_BEFORE_ALLOC_NO,
1076 .result_start_idx = 114,
1077 .result_bit_size = 128,
1078 .result_num_fields = 26,
1079 .encap_num_fields = 0,
1080 .index_opcode = BNXT_ULP_INDEX_OPCODE_ALLOCATE,
1081 .index_operand = BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR,
1082 .mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP
1085 .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
1086 .resource_type = TF_TBL_TYPE_ACT_STATS_64,
1087 .resource_sub_type =
1088 BNXT_ULP_RESOURCE_SUB_TYPE_INDEX_TYPE_INT_COUNT,
1089 .cond_opcode = BNXT_ULP_COND_OPCODE_ACTION_BIT_IS_SET,
1090 .cond_operand = BNXT_ULP_ACTION_BIT_COUNT,
1091 .direction = TF_DIR_TX,
1092 .srch_b4_alloc = BNXT_ULP_SEARCH_BEFORE_ALLOC_NO,
1093 .result_start_idx = 140,
1094 .result_bit_size = 64,
1095 .result_num_fields = 1,
1096 .encap_num_fields = 0,
1097 .index_opcode = BNXT_ULP_INDEX_OPCODE_ALLOCATE,
1098 .index_operand = BNXT_ULP_REGFILE_INDEX_FLOW_CNTR_PTR_0,
1099 .mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP
1102 .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
1103 .resource_type = TF_TBL_TYPE_ACT_MODIFY_IPV4,
1104 .resource_sub_type =
1105 BNXT_ULP_RESOURCE_SUB_TYPE_INDEX_TYPE_NORMAL,
1106 .cond_opcode = BNXT_ULP_COND_OPCODE_ACTION_BIT_IS_SET,
1107 .cond_operand = BNXT_ULP_ACTION_BIT_SET_IPV4_SRC,
1108 .direction = TF_DIR_TX,
1109 .srch_b4_alloc = BNXT_ULP_SEARCH_BEFORE_ALLOC_NO,
1110 .result_start_idx = 141,
1111 .result_bit_size = 32,
1112 .result_num_fields = 1,
1113 .encap_num_fields = 0,
1114 .index_opcode = BNXT_ULP_INDEX_OPCODE_ALLOCATE,
1115 .index_operand = BNXT_ULP_REGFILE_INDEX_MODIFY_IPV4_SRC_PTR_0,
1116 .mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP
1119 .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
1120 .resource_type = TF_TBL_TYPE_ACT_MODIFY_IPV4,
1121 .resource_sub_type =
1122 BNXT_ULP_RESOURCE_SUB_TYPE_INDEX_TYPE_NORMAL,
1123 .cond_opcode = BNXT_ULP_COND_OPCODE_ACTION_BIT_IS_SET,
1124 .cond_operand = BNXT_ULP_ACTION_BIT_SET_IPV4_DST,
1125 .direction = TF_DIR_TX,
1126 .srch_b4_alloc = BNXT_ULP_SEARCH_BEFORE_ALLOC_NO,
1127 .result_start_idx = 142,
1128 .result_bit_size = 32,
1129 .result_num_fields = 1,
1130 .encap_num_fields = 0,
1131 .index_opcode = BNXT_ULP_INDEX_OPCODE_ALLOCATE,
1132 .index_operand = BNXT_ULP_REGFILE_INDEX_MODIFY_IPV4_DST_PTR_0,
1133 .mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP
1136 .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
1137 .resource_type = TF_TBL_TYPE_ACT_ENCAP_16B,
1138 .resource_sub_type =
1139 BNXT_ULP_RESOURCE_SUB_TYPE_INDEX_TYPE_NORMAL,
1140 .direction = TF_DIR_TX,
1141 .srch_b4_alloc = BNXT_ULP_SEARCH_BEFORE_ALLOC_NO,
1142 .result_start_idx = 143,
1143 .result_bit_size = 0,
1144 .result_num_fields = 0,
1145 .encap_num_fields = 12,
1146 .index_opcode = BNXT_ULP_INDEX_OPCODE_GLOBAL,
1147 .index_operand = BNXT_ULP_GLB_REGFILE_INDEX_ENCAP_MAC_PTR,
1148 .mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP
1151 .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
1152 .resource_type = TF_TBL_TYPE_FULL_ACT_RECORD,
1153 .resource_sub_type =
1154 BNXT_ULP_RESOURCE_SUB_TYPE_INDEX_TYPE_NORMAL,
1155 .direction = TF_DIR_TX,
1156 .srch_b4_alloc = BNXT_ULP_SEARCH_BEFORE_ALLOC_NO,
1157 .result_start_idx = 155,
1158 .result_bit_size = 128,
1159 .result_num_fields = 26,
1160 .encap_num_fields = 0,
1161 .index_opcode = BNXT_ULP_INDEX_OPCODE_ALLOCATE,
1162 .index_operand = BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR,
1163 .mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP
1166 .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
1167 .resource_type = TF_TBL_TYPE_ACT_STATS_64,
1168 .resource_sub_type =
1169 BNXT_ULP_RESOURCE_SUB_TYPE_INDEX_TYPE_INT_COUNT,
1170 .cond_opcode = BNXT_ULP_COND_OPCODE_ACTION_BIT_IS_SET,
1171 .cond_operand = BNXT_ULP_ACTION_BIT_COUNT,
1172 .direction = TF_DIR_TX,
1173 .srch_b4_alloc = BNXT_ULP_SEARCH_BEFORE_ALLOC_NO,
1174 .result_start_idx = 181,
1175 .result_bit_size = 64,
1176 .result_num_fields = 1,
1177 .encap_num_fields = 0,
1178 .index_opcode = BNXT_ULP_INDEX_OPCODE_ALLOCATE,
1179 .index_operand = BNXT_ULP_REGFILE_INDEX_FLOW_CNTR_PTR_0,
1180 .mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP
1183 .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
1184 .resource_type = TF_TBL_TYPE_ACT_ENCAP_16B,
1185 .resource_sub_type =
1186 BNXT_ULP_RESOURCE_SUB_TYPE_INDEX_TYPE_NORMAL,
1187 .cond_opcode = BNXT_ULP_COND_OPCODE_ACTION_BIT_IS_SET,
1188 .cond_operand = BNXT_ULP_ACTION_BIT_PUSH_VLAN,
1189 .direction = TF_DIR_TX,
1190 .srch_b4_alloc = BNXT_ULP_SEARCH_BEFORE_ALLOC_NO,
1191 .result_start_idx = 182,
1192 .result_bit_size = 0,
1193 .result_num_fields = 0,
1194 .encap_num_fields = 12,
1195 .index_opcode = BNXT_ULP_INDEX_OPCODE_ALLOCATE,
1196 .index_operand = BNXT_ULP_REGFILE_INDEX_ENCAP_PTR_0,
1197 .mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP
1200 .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
1201 .resource_type = TF_TBL_TYPE_FULL_ACT_RECORD,
1202 .resource_sub_type =
1203 BNXT_ULP_RESOURCE_SUB_TYPE_INDEX_TYPE_NORMAL,
1204 .direction = TF_DIR_TX,
1205 .srch_b4_alloc = BNXT_ULP_SEARCH_BEFORE_ALLOC_NO,
1206 .result_start_idx = 194,
1207 .result_bit_size = 128,
1208 .result_num_fields = 26,
1209 .encap_num_fields = 0,
1210 .index_opcode = BNXT_ULP_INDEX_OPCODE_ALLOCATE,
1211 .index_operand = BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR,
1212 .mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP
1216 struct bnxt_ulp_mapper_result_field_info ulp_act_result_field_list[] = {
1218 .field_bit_size = 64,
1219 .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
1222 .field_bit_size = 32,
1223 .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ACT_PROP,
1225 (BNXT_ULP_ACT_PROP_IDX_SET_IPV4_SRC >> 8) & 0xff,
1226 BNXT_ULP_ACT_PROP_IDX_SET_IPV4_SRC & 0xff,
1227 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
1228 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
1231 .field_bit_size = 32,
1232 .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ACT_PROP,
1234 (BNXT_ULP_ACT_PROP_IDX_SET_IPV4_DST >> 8) & 0xff,
1235 BNXT_ULP_ACT_PROP_IDX_SET_IPV4_DST & 0xff,
1236 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
1237 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
1240 .field_bit_size = 3,
1241 .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
1244 .field_bit_size = 3,
1245 .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
1248 .field_bit_size = 3,
1249 .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
1252 .field_bit_size = 1,
1253 .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
1255 BNXT_ULP_SYM_ECV_L2_EN_YES,
1256 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
1257 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
1260 .field_bit_size = 4,
1261 .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
1264 .field_bit_size = 1,
1265 .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
1268 .field_bit_size = 1,
1269 .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
1270 .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
1271 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
1274 .field_bit_size = 16,
1275 .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
1278 .field_bit_size = 12,
1279 .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
1282 .field_bit_size = 1,
1283 .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
1286 .field_bit_size = 3,
1287 .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
1290 .field_bit_size = 80,
1291 .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
1294 .field_bit_size = 14,
1295 .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
1297 (BNXT_ULP_REGFILE_INDEX_FLOW_CNTR_PTR_0 >> 8) & 0xff,
1298 BNXT_ULP_REGFILE_INDEX_FLOW_CNTR_PTR_0 & 0xff,
1299 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
1300 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
1303 .field_bit_size = 1,
1304 .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
1307 .field_bit_size = 1,
1308 .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
1311 .field_bit_size = 1,
1312 .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
1315 .field_bit_size = 1,
1316 .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ACT_BIT,
1318 ((uint64_t)BNXT_ULP_ACTION_BIT_COUNT >> 56) & 0xff,
1319 ((uint64_t)BNXT_ULP_ACTION_BIT_COUNT >> 48) & 0xff,
1320 ((uint64_t)BNXT_ULP_ACTION_BIT_COUNT >> 40) & 0xff,
1321 ((uint64_t)BNXT_ULP_ACTION_BIT_COUNT >> 32) & 0xff,
1322 ((uint64_t)BNXT_ULP_ACTION_BIT_COUNT >> 24) & 0xff,
1323 ((uint64_t)BNXT_ULP_ACTION_BIT_COUNT >> 16) & 0xff,
1324 ((uint64_t)BNXT_ULP_ACTION_BIT_COUNT >> 8) & 0xff,
1325 (uint64_t)BNXT_ULP_ACTION_BIT_COUNT & 0xff,
1326 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
1329 .field_bit_size = 8,
1330 .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
1333 .field_bit_size = 1,
1334 .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
1337 .field_bit_size = 1,
1338 .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
1341 .field_bit_size = 11,
1342 .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
1344 (BNXT_ULP_GLB_REGFILE_INDEX_ENCAP_MAC_PTR >> 8) & 0xff,
1345 BNXT_ULP_GLB_REGFILE_INDEX_ENCAP_MAC_PTR & 0xff,
1346 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
1347 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
1350 .field_bit_size = 10,
1351 .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
1353 (BNXT_ULP_REGFILE_INDEX_MODIFY_IPV4_DST_PTR_0 >> 8) & 0xff,
1354 BNXT_ULP_REGFILE_INDEX_MODIFY_IPV4_DST_PTR_0 & 0xff,
1355 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
1356 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
1359 .field_bit_size = 16,
1360 .result_opcode = BNXT_ULP_MAPPER_OPC_IF_ACT_BIT_THEN_ACT_PROP_ELSE_CONST,
1362 ((uint64_t)BNXT_ULP_ACTION_BIT_SET_TP_DST >> 56) & 0xff,
1363 ((uint64_t)BNXT_ULP_ACTION_BIT_SET_TP_DST >> 48) & 0xff,
1364 ((uint64_t)BNXT_ULP_ACTION_BIT_SET_TP_DST >> 40) & 0xff,
1365 ((uint64_t)BNXT_ULP_ACTION_BIT_SET_TP_DST >> 32) & 0xff,
1366 ((uint64_t)BNXT_ULP_ACTION_BIT_SET_TP_DST >> 24) & 0xff,
1367 ((uint64_t)BNXT_ULP_ACTION_BIT_SET_TP_DST >> 16) & 0xff,
1368 ((uint64_t)BNXT_ULP_ACTION_BIT_SET_TP_DST >> 8) & 0xff,
1369 (uint64_t)BNXT_ULP_ACTION_BIT_SET_TP_DST & 0xff,
1370 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
1371 .result_operand_true = {
1372 (BNXT_ULP_ACT_PROP_IDX_SET_TP_DST >> 8) & 0xff,
1373 BNXT_ULP_ACT_PROP_IDX_SET_TP_DST & 0xff,
1374 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
1375 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
1378 .field_bit_size = 10,
1379 .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
1381 (BNXT_ULP_REGFILE_INDEX_MODIFY_IPV4_SRC_PTR_0 >> 8) & 0xff,
1382 BNXT_ULP_REGFILE_INDEX_MODIFY_IPV4_SRC_PTR_0 & 0xff,
1383 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
1384 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
1387 .field_bit_size = 16,
1388 .result_opcode = BNXT_ULP_MAPPER_OPC_IF_ACT_BIT_THEN_ACT_PROP_ELSE_CONST,
1390 ((uint64_t)BNXT_ULP_ACTION_BIT_SET_TP_SRC >> 56) & 0xff,
1391 ((uint64_t)BNXT_ULP_ACTION_BIT_SET_TP_SRC >> 48) & 0xff,
1392 ((uint64_t)BNXT_ULP_ACTION_BIT_SET_TP_SRC >> 40) & 0xff,
1393 ((uint64_t)BNXT_ULP_ACTION_BIT_SET_TP_SRC >> 32) & 0xff,
1394 ((uint64_t)BNXT_ULP_ACTION_BIT_SET_TP_SRC >> 24) & 0xff,
1395 ((uint64_t)BNXT_ULP_ACTION_BIT_SET_TP_SRC >> 16) & 0xff,
1396 ((uint64_t)BNXT_ULP_ACTION_BIT_SET_TP_SRC >> 8) & 0xff,
1397 (uint64_t)BNXT_ULP_ACTION_BIT_SET_TP_SRC & 0xff,
1398 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
1399 .result_operand_true = {
1400 (BNXT_ULP_ACT_PROP_IDX_SET_TP_SRC >> 8) & 0xff,
1401 BNXT_ULP_ACT_PROP_IDX_SET_TP_SRC & 0xff,
1402 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
1403 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
1406 .field_bit_size = 10,
1407 .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
1410 .field_bit_size = 1,
1411 .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
1414 .field_bit_size = 1,
1415 .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
1418 .field_bit_size = 1,
1419 .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,
1421 (BNXT_ULP_CF_IDX_ACT_DEC_TTL >> 8) & 0xff,
1422 BNXT_ULP_CF_IDX_ACT_DEC_TTL & 0xff,
1423 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
1424 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
1427 .field_bit_size = 1,
1428 .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,
1430 (BNXT_ULP_CF_IDX_ACT_T_DEC_TTL >> 8) & 0xff,
1431 BNXT_ULP_CF_IDX_ACT_T_DEC_TTL & 0xff,
1432 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
1433 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
1436 .field_bit_size = 4,
1437 .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
1439 BNXT_ULP_SYM_DECAP_FUNC_THRU_L2,
1440 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
1441 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
1444 .field_bit_size = 12,
1445 .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ACT_PROP,
1447 (BNXT_ULP_ACT_PROP_IDX_VNIC >> 8) & 0xff,
1448 BNXT_ULP_ACT_PROP_IDX_VNIC & 0xff,
1449 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
1450 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
1453 .field_bit_size = 1,
1454 .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
1457 .field_bit_size = 1,
1458 .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
1461 .field_bit_size = 2,
1462 .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
1465 .field_bit_size = 1,
1466 .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
1469 .field_bit_size = 1,
1470 .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
1473 .field_bit_size = 1,
1474 .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
1477 .field_bit_size = 64,
1478 .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
1481 .field_bit_size = 14,
1482 .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
1484 (BNXT_ULP_REGFILE_INDEX_FLOW_CNTR_PTR_0 >> 8) & 0xff,
1485 BNXT_ULP_REGFILE_INDEX_FLOW_CNTR_PTR_0 & 0xff,
1486 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
1487 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
1490 .field_bit_size = 1,
1491 .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
1494 .field_bit_size = 1,
1495 .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
1498 .field_bit_size = 1,
1499 .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
1502 .field_bit_size = 1,
1503 .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ACT_BIT,
1505 ((uint64_t)BNXT_ULP_ACTION_BIT_COUNT >> 56) & 0xff,
1506 ((uint64_t)BNXT_ULP_ACTION_BIT_COUNT >> 48) & 0xff,
1507 ((uint64_t)BNXT_ULP_ACTION_BIT_COUNT >> 40) & 0xff,
1508 ((uint64_t)BNXT_ULP_ACTION_BIT_COUNT >> 32) & 0xff,
1509 ((uint64_t)BNXT_ULP_ACTION_BIT_COUNT >> 24) & 0xff,
1510 ((uint64_t)BNXT_ULP_ACTION_BIT_COUNT >> 16) & 0xff,
1511 ((uint64_t)BNXT_ULP_ACTION_BIT_COUNT >> 8) & 0xff,
1512 (uint64_t)BNXT_ULP_ACTION_BIT_COUNT & 0xff,
1513 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
1516 .field_bit_size = 8,
1517 .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
1520 .field_bit_size = 1,
1521 .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
1524 .field_bit_size = 1,
1525 .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
1528 .field_bit_size = 11,
1529 .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
1531 (BNXT_ULP_REGFILE_INDEX_ENCAP_PTR_0 >> 8) & 0xff,
1532 BNXT_ULP_REGFILE_INDEX_ENCAP_PTR_0 & 0xff,
1533 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
1534 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
1537 .field_bit_size = 10,
1538 .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
1540 (BNXT_ULP_REGFILE_INDEX_MODIFY_IPV4_DST_PTR_0 >> 8) & 0xff,
1541 BNXT_ULP_REGFILE_INDEX_MODIFY_IPV4_DST_PTR_0 & 0xff,
1542 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
1543 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
1546 .field_bit_size = 16,
1547 .result_opcode = BNXT_ULP_MAPPER_OPC_IF_ACT_BIT_THEN_ACT_PROP_ELSE_CONST,
1549 ((uint64_t)BNXT_ULP_ACTION_BIT_SET_TP_DST >> 56) & 0xff,
1550 ((uint64_t)BNXT_ULP_ACTION_BIT_SET_TP_DST >> 48) & 0xff,
1551 ((uint64_t)BNXT_ULP_ACTION_BIT_SET_TP_DST >> 40) & 0xff,
1552 ((uint64_t)BNXT_ULP_ACTION_BIT_SET_TP_DST >> 32) & 0xff,
1553 ((uint64_t)BNXT_ULP_ACTION_BIT_SET_TP_DST >> 24) & 0xff,
1554 ((uint64_t)BNXT_ULP_ACTION_BIT_SET_TP_DST >> 16) & 0xff,
1555 ((uint64_t)BNXT_ULP_ACTION_BIT_SET_TP_DST >> 8) & 0xff,
1556 (uint64_t)BNXT_ULP_ACTION_BIT_SET_TP_DST & 0xff,
1557 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
1558 .result_operand_true = {
1559 (BNXT_ULP_ACT_PROP_IDX_SET_TP_DST >> 8) & 0xff,
1560 BNXT_ULP_ACT_PROP_IDX_SET_TP_DST & 0xff,
1561 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
1562 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
1565 .field_bit_size = 10,
1566 .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
1568 (BNXT_ULP_REGFILE_INDEX_MODIFY_IPV4_SRC_PTR_0 >> 8) & 0xff,
1569 BNXT_ULP_REGFILE_INDEX_MODIFY_IPV4_SRC_PTR_0 & 0xff,
1570 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
1571 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
1574 .field_bit_size = 16,
1575 .result_opcode = BNXT_ULP_MAPPER_OPC_IF_ACT_BIT_THEN_ACT_PROP_ELSE_CONST,
1577 ((uint64_t)BNXT_ULP_ACTION_BIT_SET_TP_SRC >> 56) & 0xff,
1578 ((uint64_t)BNXT_ULP_ACTION_BIT_SET_TP_SRC >> 48) & 0xff,
1579 ((uint64_t)BNXT_ULP_ACTION_BIT_SET_TP_SRC >> 40) & 0xff,
1580 ((uint64_t)BNXT_ULP_ACTION_BIT_SET_TP_SRC >> 32) & 0xff,
1581 ((uint64_t)BNXT_ULP_ACTION_BIT_SET_TP_SRC >> 24) & 0xff,
1582 ((uint64_t)BNXT_ULP_ACTION_BIT_SET_TP_SRC >> 16) & 0xff,
1583 ((uint64_t)BNXT_ULP_ACTION_BIT_SET_TP_SRC >> 8) & 0xff,
1584 (uint64_t)BNXT_ULP_ACTION_BIT_SET_TP_SRC & 0xff,
1585 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
1586 .result_operand_true = {
1587 (BNXT_ULP_ACT_PROP_IDX_SET_TP_SRC >> 8) & 0xff,
1588 BNXT_ULP_ACT_PROP_IDX_SET_TP_SRC & 0xff,
1589 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
1590 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
1593 .field_bit_size = 10,
1594 .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
1597 .field_bit_size = 1,
1598 .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
1601 .field_bit_size = 1,
1602 .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
1605 .field_bit_size = 1,
1606 .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,
1608 (BNXT_ULP_CF_IDX_ACT_DEC_TTL >> 8) & 0xff,
1609 BNXT_ULP_CF_IDX_ACT_DEC_TTL & 0xff,
1610 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
1611 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
1614 .field_bit_size = 1,
1615 .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,
1617 (BNXT_ULP_CF_IDX_ACT_T_DEC_TTL >> 8) & 0xff,
1618 BNXT_ULP_CF_IDX_ACT_T_DEC_TTL & 0xff,
1619 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
1620 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
1623 .field_bit_size = 4,
1624 .result_opcode = BNXT_ULP_MAPPER_OPC_IF_ACT_BIT_THEN_CONST_ELSE_CONST,
1626 ((uint64_t)BNXT_ULP_ACTION_BIT_VXLAN_DECAP >> 56) & 0xff,
1627 ((uint64_t)BNXT_ULP_ACTION_BIT_VXLAN_DECAP >> 48) & 0xff,
1628 ((uint64_t)BNXT_ULP_ACTION_BIT_VXLAN_DECAP >> 40) & 0xff,
1629 ((uint64_t)BNXT_ULP_ACTION_BIT_VXLAN_DECAP >> 32) & 0xff,
1630 ((uint64_t)BNXT_ULP_ACTION_BIT_VXLAN_DECAP >> 24) & 0xff,
1631 ((uint64_t)BNXT_ULP_ACTION_BIT_VXLAN_DECAP >> 16) & 0xff,
1632 ((uint64_t)BNXT_ULP_ACTION_BIT_VXLAN_DECAP >> 8) & 0xff,
1633 (uint64_t)BNXT_ULP_ACTION_BIT_VXLAN_DECAP & 0xff,
1634 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
1635 .result_operand_true = {0x0a, 0x00, 0x00, 0x00, 0x00, 0x00,
1636 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
1639 .field_bit_size = 12,
1640 .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ACT_PROP,
1642 (BNXT_ULP_ACT_PROP_IDX_VNIC >> 8) & 0xff,
1643 BNXT_ULP_ACT_PROP_IDX_VNIC & 0xff,
1644 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
1645 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
1648 .field_bit_size = 1,
1649 .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ACT_BIT,
1651 ((uint64_t)BNXT_ULP_ACTION_BIT_POP_VLAN >> 56) & 0xff,
1652 ((uint64_t)BNXT_ULP_ACTION_BIT_POP_VLAN >> 48) & 0xff,
1653 ((uint64_t)BNXT_ULP_ACTION_BIT_POP_VLAN >> 40) & 0xff,
1654 ((uint64_t)BNXT_ULP_ACTION_BIT_POP_VLAN >> 32) & 0xff,
1655 ((uint64_t)BNXT_ULP_ACTION_BIT_POP_VLAN >> 24) & 0xff,
1656 ((uint64_t)BNXT_ULP_ACTION_BIT_POP_VLAN >> 16) & 0xff,
1657 ((uint64_t)BNXT_ULP_ACTION_BIT_POP_VLAN >> 8) & 0xff,
1658 (uint64_t)BNXT_ULP_ACTION_BIT_POP_VLAN & 0xff,
1659 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
1662 .field_bit_size = 1,
1663 .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
1666 .field_bit_size = 2,
1667 .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
1670 .field_bit_size = 1,
1671 .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ACT_BIT,
1673 ((uint64_t)BNXT_ULP_ACTION_BIT_DROP >> 56) & 0xff,
1674 ((uint64_t)BNXT_ULP_ACTION_BIT_DROP >> 48) & 0xff,
1675 ((uint64_t)BNXT_ULP_ACTION_BIT_DROP >> 40) & 0xff,
1676 ((uint64_t)BNXT_ULP_ACTION_BIT_DROP >> 32) & 0xff,
1677 ((uint64_t)BNXT_ULP_ACTION_BIT_DROP >> 24) & 0xff,
1678 ((uint64_t)BNXT_ULP_ACTION_BIT_DROP >> 16) & 0xff,
1679 ((uint64_t)BNXT_ULP_ACTION_BIT_DROP >> 8) & 0xff,
1680 (uint64_t)BNXT_ULP_ACTION_BIT_DROP & 0xff,
1681 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
1684 .field_bit_size = 1,
1685 .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
1688 .field_bit_size = 1,
1689 .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
1692 .field_bit_size = 64,
1693 .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
1696 .field_bit_size = 14,
1697 .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
1699 (BNXT_ULP_REGFILE_INDEX_FLOW_CNTR_PTR_0 >> 8) & 0xff,
1700 BNXT_ULP_REGFILE_INDEX_FLOW_CNTR_PTR_0 & 0xff,
1701 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
1702 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
1705 .field_bit_size = 1,
1706 .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
1709 .field_bit_size = 1,
1710 .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
1713 .field_bit_size = 1,
1714 .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
1717 .field_bit_size = 1,
1718 .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ACT_BIT,
1720 ((uint64_t)BNXT_ULP_ACTION_BIT_COUNT >> 56) & 0xff,
1721 ((uint64_t)BNXT_ULP_ACTION_BIT_COUNT >> 48) & 0xff,
1722 ((uint64_t)BNXT_ULP_ACTION_BIT_COUNT >> 40) & 0xff,
1723 ((uint64_t)BNXT_ULP_ACTION_BIT_COUNT >> 32) & 0xff,
1724 ((uint64_t)BNXT_ULP_ACTION_BIT_COUNT >> 24) & 0xff,
1725 ((uint64_t)BNXT_ULP_ACTION_BIT_COUNT >> 16) & 0xff,
1726 ((uint64_t)BNXT_ULP_ACTION_BIT_COUNT >> 8) & 0xff,
1727 (uint64_t)BNXT_ULP_ACTION_BIT_COUNT & 0xff,
1728 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
1731 .field_bit_size = 8,
1732 .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
1735 .field_bit_size = 1,
1736 .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
1739 .field_bit_size = 1,
1740 .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
1743 .field_bit_size = 11,
1744 .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
1747 .field_bit_size = 10,
1748 .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
1751 .field_bit_size = 16,
1752 .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
1755 .field_bit_size = 10,
1756 .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
1759 .field_bit_size = 16,
1760 .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
1763 .field_bit_size = 10,
1764 .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
1767 .field_bit_size = 1,
1768 .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
1771 .field_bit_size = 1,
1772 .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
1775 .field_bit_size = 1,
1776 .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
1779 .field_bit_size = 1,
1780 .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
1783 .field_bit_size = 4,
1784 .result_opcode = BNXT_ULP_MAPPER_OPC_IF_ACT_BIT_THEN_CONST_ELSE_CONST,
1786 ((uint64_t)BNXT_ULP_ACTION_BIT_VXLAN_DECAP >> 56) & 0xff,
1787 ((uint64_t)BNXT_ULP_ACTION_BIT_VXLAN_DECAP >> 48) & 0xff,
1788 ((uint64_t)BNXT_ULP_ACTION_BIT_VXLAN_DECAP >> 40) & 0xff,
1789 ((uint64_t)BNXT_ULP_ACTION_BIT_VXLAN_DECAP >> 32) & 0xff,
1790 ((uint64_t)BNXT_ULP_ACTION_BIT_VXLAN_DECAP >> 24) & 0xff,
1791 ((uint64_t)BNXT_ULP_ACTION_BIT_VXLAN_DECAP >> 16) & 0xff,
1792 ((uint64_t)BNXT_ULP_ACTION_BIT_VXLAN_DECAP >> 8) & 0xff,
1793 (uint64_t)BNXT_ULP_ACTION_BIT_VXLAN_DECAP & 0xff,
1794 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
1795 .result_operand_true = {0x0a, 0x00, 0x00, 0x00, 0x00, 0x00,
1796 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
1799 .field_bit_size = 12,
1800 .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ACT_PROP,
1802 (BNXT_ULP_ACT_PROP_IDX_VNIC >> 8) & 0xff,
1803 BNXT_ULP_ACT_PROP_IDX_VNIC & 0xff,
1804 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
1805 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
1808 .field_bit_size = 1,
1809 .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ACT_BIT,
1811 ((uint64_t)BNXT_ULP_ACTION_BIT_POP_VLAN >> 56) & 0xff,
1812 ((uint64_t)BNXT_ULP_ACTION_BIT_POP_VLAN >> 48) & 0xff,
1813 ((uint64_t)BNXT_ULP_ACTION_BIT_POP_VLAN >> 40) & 0xff,
1814 ((uint64_t)BNXT_ULP_ACTION_BIT_POP_VLAN >> 32) & 0xff,
1815 ((uint64_t)BNXT_ULP_ACTION_BIT_POP_VLAN >> 24) & 0xff,
1816 ((uint64_t)BNXT_ULP_ACTION_BIT_POP_VLAN >> 16) & 0xff,
1817 ((uint64_t)BNXT_ULP_ACTION_BIT_POP_VLAN >> 8) & 0xff,
1818 (uint64_t)BNXT_ULP_ACTION_BIT_POP_VLAN & 0xff,
1819 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
1822 .field_bit_size = 1,
1823 .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
1826 .field_bit_size = 2,
1827 .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
1830 .field_bit_size = 1,
1831 .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
1834 .field_bit_size = 1,
1835 .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
1838 .field_bit_size = 1,
1839 .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
1842 .field_bit_size = 64,
1843 .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
1846 .field_bit_size = 48,
1847 .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ACT_PROP,
1849 (BNXT_ULP_ACT_PROP_IDX_ENCAP_L2_SMAC >> 8) & 0xff,
1850 BNXT_ULP_ACT_PROP_IDX_ENCAP_L2_SMAC & 0xff,
1851 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
1852 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
1855 .field_bit_size = 32,
1856 .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ACT_PROP,
1858 (BNXT_ULP_ACT_PROP_IDX_ENCAP_IP_SRC >> 8) & 0xff,
1859 BNXT_ULP_ACT_PROP_IDX_ENCAP_IP_SRC & 0xff,
1860 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
1861 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
1864 .field_bit_size = 48,
1865 .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
1868 .field_bit_size = 48,
1869 .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ACT_PROP,
1871 (BNXT_ULP_ACT_PROP_IDX_ENCAP_L2_SMAC >> 8) & 0xff,
1872 BNXT_ULP_ACT_PROP_IDX_ENCAP_L2_SMAC & 0xff,
1873 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
1874 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
1877 .field_bit_size = 128,
1878 .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ACT_PROP,
1880 (BNXT_ULP_ACT_PROP_IDX_ENCAP_IP_SRC >> 8) & 0xff,
1881 BNXT_ULP_ACT_PROP_IDX_ENCAP_IP_SRC & 0xff,
1882 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
1883 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
1886 .field_bit_size = 16,
1887 .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
1890 .field_bit_size = 3,
1891 .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
1893 BNXT_ULP_SYM_ECV_TUN_TYPE_VXLAN,
1894 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
1895 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
1898 .field_bit_size = 3,
1899 .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
1901 BNXT_ULP_SYM_ECV_L4_TYPE_UDP_CSUM,
1902 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
1903 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
1906 .field_bit_size = 3,
1907 .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ACT_PROP,
1909 (BNXT_ULP_ACT_PROP_IDX_ENCAP_L3_TYPE >> 8) & 0xff,
1910 BNXT_ULP_ACT_PROP_IDX_ENCAP_L3_TYPE & 0xff,
1911 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
1912 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
1915 .field_bit_size = 1,
1916 .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
1917 .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
1918 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
1921 .field_bit_size = 4,
1922 .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ACT_PROP,
1924 (BNXT_ULP_ACT_PROP_IDX_ENCAP_VTAG_TYPE >> 8) & 0xff,
1925 BNXT_ULP_ACT_PROP_IDX_ENCAP_VTAG_TYPE & 0xff,
1926 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
1927 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
1930 .field_bit_size = 1,
1931 .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
1934 .field_bit_size = 1,
1935 .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
1936 .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
1937 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
1940 .field_bit_size = 48,
1941 .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ACT_PROP,
1943 (BNXT_ULP_ACT_PROP_IDX_ENCAP_L2_DMAC >> 8) & 0xff,
1944 BNXT_ULP_ACT_PROP_IDX_ENCAP_L2_DMAC & 0xff,
1945 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
1946 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
1949 .field_bit_size = 0,
1950 .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ENCAP_ACT_PROP_SZ,
1952 (BNXT_ULP_ACT_PROP_IDX_ENCAP_VTAG >> 8) & 0xff,
1953 BNXT_ULP_ACT_PROP_IDX_ENCAP_VTAG & 0xff,
1954 (BNXT_ULP_ACT_PROP_IDX_ENCAP_VTAG_SZ >> 8) & 0xff,
1955 BNXT_ULP_ACT_PROP_IDX_ENCAP_VTAG_SZ & 0xff,
1956 0x00, 0x00, 0x00, 0x00, 0x00,
1957 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
1960 .field_bit_size = 0,
1961 .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ENCAP_ACT_PROP_SZ,
1963 (BNXT_ULP_ACT_PROP_IDX_ENCAP_IP >> 8) & 0xff,
1964 BNXT_ULP_ACT_PROP_IDX_ENCAP_IP & 0xff,
1965 (BNXT_ULP_ACT_PROP_IDX_ENCAP_IP_SZ >> 8) & 0xff,
1966 BNXT_ULP_ACT_PROP_IDX_ENCAP_IP_SZ & 0xff,
1967 0x00, 0x00, 0x00, 0x00, 0x00,
1968 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
1971 .field_bit_size = 32,
1972 .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ACT_PROP,
1974 (BNXT_ULP_ACT_PROP_IDX_ENCAP_UDP >> 8) & 0xff,
1975 BNXT_ULP_ACT_PROP_IDX_ENCAP_UDP & 0xff,
1976 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
1977 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
1980 .field_bit_size = 0,
1981 .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ENCAP_ACT_PROP_SZ,
1983 (BNXT_ULP_ACT_PROP_IDX_ENCAP_TUN >> 8) & 0xff,
1984 BNXT_ULP_ACT_PROP_IDX_ENCAP_TUN & 0xff,
1985 (BNXT_ULP_ACT_PROP_IDX_ENCAP_TUN_SZ >> 8) & 0xff,
1986 BNXT_ULP_ACT_PROP_IDX_ENCAP_TUN_SZ & 0xff,
1987 0x00, 0x00, 0x00, 0x00, 0x00,
1988 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
1991 .field_bit_size = 14,
1992 .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
1994 (BNXT_ULP_REGFILE_INDEX_FLOW_CNTR_PTR_0 >> 8) & 0xff,
1995 BNXT_ULP_REGFILE_INDEX_FLOW_CNTR_PTR_0 & 0xff,
1996 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
1997 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
2000 .field_bit_size = 1,
2001 .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2004 .field_bit_size = 1,
2005 .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2008 .field_bit_size = 1,
2009 .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2012 .field_bit_size = 1,
2013 .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ACT_BIT,
2015 ((uint64_t)BNXT_ULP_ACTION_BIT_COUNT >> 56) & 0xff,
2016 ((uint64_t)BNXT_ULP_ACTION_BIT_COUNT >> 48) & 0xff,
2017 ((uint64_t)BNXT_ULP_ACTION_BIT_COUNT >> 40) & 0xff,
2018 ((uint64_t)BNXT_ULP_ACTION_BIT_COUNT >> 32) & 0xff,
2019 ((uint64_t)BNXT_ULP_ACTION_BIT_COUNT >> 24) & 0xff,
2020 ((uint64_t)BNXT_ULP_ACTION_BIT_COUNT >> 16) & 0xff,
2021 ((uint64_t)BNXT_ULP_ACTION_BIT_COUNT >> 8) & 0xff,
2022 (uint64_t)BNXT_ULP_ACTION_BIT_COUNT & 0xff,
2023 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
2026 .field_bit_size = 8,
2027 .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2030 .field_bit_size = 1,
2031 .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2034 .field_bit_size = 1,
2035 .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2038 .field_bit_size = 11,
2039 .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
2041 (BNXT_ULP_REGFILE_INDEX_ENCAP_PTR_0 >> 8) & 0xff,
2042 BNXT_ULP_REGFILE_INDEX_ENCAP_PTR_0 & 0xff,
2043 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
2044 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
2047 .field_bit_size = 10,
2048 .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2051 .field_bit_size = 16,
2052 .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2055 .field_bit_size = 10,
2056 .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2059 .field_bit_size = 16,
2060 .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2063 .field_bit_size = 10,
2064 .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2067 .field_bit_size = 1,
2068 .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2071 .field_bit_size = 1,
2072 .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2075 .field_bit_size = 1,
2076 .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2079 .field_bit_size = 1,
2080 .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2083 .field_bit_size = 4,
2084 .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2087 .field_bit_size = 12,
2088 .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ACT_PROP,
2090 (BNXT_ULP_ACT_PROP_IDX_VPORT >> 8) & 0xff,
2091 BNXT_ULP_ACT_PROP_IDX_VPORT & 0xff,
2092 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
2093 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
2096 .field_bit_size = 1,
2097 .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2100 .field_bit_size = 1,
2101 .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2104 .field_bit_size = 2,
2105 .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2108 .field_bit_size = 1,
2109 .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2112 .field_bit_size = 1,
2113 .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2116 .field_bit_size = 1,
2117 .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2120 .field_bit_size = 64,
2121 .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2124 .field_bit_size = 32,
2125 .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ACT_PROP,
2127 (BNXT_ULP_ACT_PROP_IDX_SET_IPV4_SRC >> 8) & 0xff,
2128 BNXT_ULP_ACT_PROP_IDX_SET_IPV4_SRC & 0xff,
2129 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
2130 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
2133 .field_bit_size = 32,
2134 .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ACT_PROP,
2136 (BNXT_ULP_ACT_PROP_IDX_SET_IPV4_DST >> 8) & 0xff,
2137 BNXT_ULP_ACT_PROP_IDX_SET_IPV4_DST & 0xff,
2138 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
2139 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
2142 .field_bit_size = 3,
2143 .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2146 .field_bit_size = 3,
2147 .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2150 .field_bit_size = 3,
2151 .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2154 .field_bit_size = 1,
2155 .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
2157 BNXT_ULP_SYM_ECV_L2_EN_YES,
2158 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
2159 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
2162 .field_bit_size = 4,
2163 .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2166 .field_bit_size = 1,
2167 .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2170 .field_bit_size = 1,
2171 .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
2172 .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
2173 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
2176 .field_bit_size = 16,
2177 .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2180 .field_bit_size = 12,
2181 .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2184 .field_bit_size = 1,
2185 .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2188 .field_bit_size = 3,
2189 .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2192 .field_bit_size = 80,
2193 .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2196 .field_bit_size = 14,
2197 .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
2199 (BNXT_ULP_REGFILE_INDEX_FLOW_CNTR_PTR_0 >> 8) & 0xff,
2200 BNXT_ULP_REGFILE_INDEX_FLOW_CNTR_PTR_0 & 0xff,
2201 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
2202 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
2205 .field_bit_size = 1,
2206 .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2209 .field_bit_size = 1,
2210 .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2213 .field_bit_size = 1,
2214 .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2217 .field_bit_size = 1,
2218 .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ACT_BIT,
2220 ((uint64_t)BNXT_ULP_ACTION_BIT_COUNT >> 56) & 0xff,
2221 ((uint64_t)BNXT_ULP_ACTION_BIT_COUNT >> 48) & 0xff,
2222 ((uint64_t)BNXT_ULP_ACTION_BIT_COUNT >> 40) & 0xff,
2223 ((uint64_t)BNXT_ULP_ACTION_BIT_COUNT >> 32) & 0xff,
2224 ((uint64_t)BNXT_ULP_ACTION_BIT_COUNT >> 24) & 0xff,
2225 ((uint64_t)BNXT_ULP_ACTION_BIT_COUNT >> 16) & 0xff,
2226 ((uint64_t)BNXT_ULP_ACTION_BIT_COUNT >> 8) & 0xff,
2227 (uint64_t)BNXT_ULP_ACTION_BIT_COUNT & 0xff,
2228 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
2231 .field_bit_size = 8,
2232 .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2235 .field_bit_size = 1,
2236 .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2239 .field_bit_size = 1,
2240 .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2243 .field_bit_size = 11,
2244 .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
2246 (BNXT_ULP_GLB_REGFILE_INDEX_ENCAP_MAC_PTR >> 8) & 0xff,
2247 BNXT_ULP_GLB_REGFILE_INDEX_ENCAP_MAC_PTR & 0xff,
2248 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
2249 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
2252 .field_bit_size = 10,
2253 .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
2255 (BNXT_ULP_REGFILE_INDEX_MODIFY_IPV4_DST_PTR_0 >> 8) & 0xff,
2256 BNXT_ULP_REGFILE_INDEX_MODIFY_IPV4_DST_PTR_0 & 0xff,
2257 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
2258 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
2261 .field_bit_size = 16,
2262 .result_opcode = BNXT_ULP_MAPPER_OPC_IF_ACT_BIT_THEN_ACT_PROP_ELSE_CONST,
2264 ((uint64_t)BNXT_ULP_ACTION_BIT_SET_TP_DST >> 56) & 0xff,
2265 ((uint64_t)BNXT_ULP_ACTION_BIT_SET_TP_DST >> 48) & 0xff,
2266 ((uint64_t)BNXT_ULP_ACTION_BIT_SET_TP_DST >> 40) & 0xff,
2267 ((uint64_t)BNXT_ULP_ACTION_BIT_SET_TP_DST >> 32) & 0xff,
2268 ((uint64_t)BNXT_ULP_ACTION_BIT_SET_TP_DST >> 24) & 0xff,
2269 ((uint64_t)BNXT_ULP_ACTION_BIT_SET_TP_DST >> 16) & 0xff,
2270 ((uint64_t)BNXT_ULP_ACTION_BIT_SET_TP_DST >> 8) & 0xff,
2271 (uint64_t)BNXT_ULP_ACTION_BIT_SET_TP_DST & 0xff,
2272 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
2273 .result_operand_true = {
2274 (BNXT_ULP_ACT_PROP_IDX_SET_TP_DST >> 8) & 0xff,
2275 BNXT_ULP_ACT_PROP_IDX_SET_TP_DST & 0xff,
2276 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
2277 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
2280 .field_bit_size = 10,
2281 .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
2283 (BNXT_ULP_REGFILE_INDEX_MODIFY_IPV4_SRC_PTR_0 >> 8) & 0xff,
2284 BNXT_ULP_REGFILE_INDEX_MODIFY_IPV4_SRC_PTR_0 & 0xff,
2285 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
2286 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
2289 .field_bit_size = 16,
2290 .result_opcode = BNXT_ULP_MAPPER_OPC_IF_ACT_BIT_THEN_ACT_PROP_ELSE_CONST,
2292 ((uint64_t)BNXT_ULP_ACTION_BIT_SET_TP_SRC >> 56) & 0xff,
2293 ((uint64_t)BNXT_ULP_ACTION_BIT_SET_TP_SRC >> 48) & 0xff,
2294 ((uint64_t)BNXT_ULP_ACTION_BIT_SET_TP_SRC >> 40) & 0xff,
2295 ((uint64_t)BNXT_ULP_ACTION_BIT_SET_TP_SRC >> 32) & 0xff,
2296 ((uint64_t)BNXT_ULP_ACTION_BIT_SET_TP_SRC >> 24) & 0xff,
2297 ((uint64_t)BNXT_ULP_ACTION_BIT_SET_TP_SRC >> 16) & 0xff,
2298 ((uint64_t)BNXT_ULP_ACTION_BIT_SET_TP_SRC >> 8) & 0xff,
2299 (uint64_t)BNXT_ULP_ACTION_BIT_SET_TP_SRC & 0xff,
2300 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
2301 .result_operand_true = {
2302 (BNXT_ULP_ACT_PROP_IDX_SET_TP_SRC >> 8) & 0xff,
2303 BNXT_ULP_ACT_PROP_IDX_SET_TP_SRC & 0xff,
2304 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
2305 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
2308 .field_bit_size = 10,
2309 .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2312 .field_bit_size = 1,
2313 .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2316 .field_bit_size = 1,
2317 .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2320 .field_bit_size = 1,
2321 .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,
2323 (BNXT_ULP_CF_IDX_ACT_DEC_TTL >> 8) & 0xff,
2324 BNXT_ULP_CF_IDX_ACT_DEC_TTL & 0xff,
2325 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
2326 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
2329 .field_bit_size = 1,
2330 .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,
2332 (BNXT_ULP_CF_IDX_ACT_T_DEC_TTL >> 8) & 0xff,
2333 BNXT_ULP_CF_IDX_ACT_T_DEC_TTL & 0xff,
2334 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
2335 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
2338 .field_bit_size = 4,
2339 .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
2341 BNXT_ULP_SYM_DECAP_FUNC_THRU_L2,
2342 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
2343 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
2346 .field_bit_size = 12,
2347 .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ACT_PROP,
2349 (BNXT_ULP_ACT_PROP_IDX_VPORT >> 8) & 0xff,
2350 BNXT_ULP_ACT_PROP_IDX_VPORT & 0xff,
2351 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
2352 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
2355 .field_bit_size = 1,
2356 .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2359 .field_bit_size = 1,
2360 .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2363 .field_bit_size = 2,
2364 .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2367 .field_bit_size = 1,
2368 .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2371 .field_bit_size = 1,
2372 .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2375 .field_bit_size = 1,
2376 .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2379 .field_bit_size = 64,
2380 .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2383 .field_bit_size = 3,
2384 .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2387 .field_bit_size = 3,
2388 .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2391 .field_bit_size = 3,
2392 .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2395 .field_bit_size = 1,
2396 .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2399 .field_bit_size = 4,
2400 .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
2402 BNXT_ULP_SYM_ECV_VTAG_TYPE_ADD_1_ENCAP_PRI,
2403 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
2404 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
2407 .field_bit_size = 1,
2408 .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2411 .field_bit_size = 1,
2412 .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
2413 .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
2414 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
2417 .field_bit_size = 16,
2418 .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ACT_PROP,
2420 (BNXT_ULP_ACT_PROP_IDX_PUSH_VLAN >> 8) & 0xff,
2421 BNXT_ULP_ACT_PROP_IDX_PUSH_VLAN & 0xff,
2422 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
2423 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
2426 .field_bit_size = 12,
2427 .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ACT_PROP,
2429 (BNXT_ULP_ACT_PROP_IDX_SET_VLAN_VID >> 8) & 0xff,
2430 BNXT_ULP_ACT_PROP_IDX_SET_VLAN_VID & 0xff,
2431 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
2432 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
2435 .field_bit_size = 1,
2436 .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2439 .field_bit_size = 3,
2440 .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ACT_PROP,
2442 (BNXT_ULP_ACT_PROP_IDX_SET_VLAN_PCP >> 8) & 0xff,
2443 BNXT_ULP_ACT_PROP_IDX_SET_VLAN_PCP & 0xff,
2444 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
2445 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
2448 .field_bit_size = 80,
2449 .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2452 .field_bit_size = 14,
2453 .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
2455 (BNXT_ULP_REGFILE_INDEX_FLOW_CNTR_PTR_0 >> 8) & 0xff,
2456 BNXT_ULP_REGFILE_INDEX_FLOW_CNTR_PTR_0 & 0xff,
2457 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
2458 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
2461 .field_bit_size = 1,
2462 .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2465 .field_bit_size = 1,
2466 .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2469 .field_bit_size = 1,
2470 .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2473 .field_bit_size = 1,
2474 .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ACT_BIT,
2476 ((uint64_t)BNXT_ULP_ACTION_BIT_COUNT >> 56) & 0xff,
2477 ((uint64_t)BNXT_ULP_ACTION_BIT_COUNT >> 48) & 0xff,
2478 ((uint64_t)BNXT_ULP_ACTION_BIT_COUNT >> 40) & 0xff,
2479 ((uint64_t)BNXT_ULP_ACTION_BIT_COUNT >> 32) & 0xff,
2480 ((uint64_t)BNXT_ULP_ACTION_BIT_COUNT >> 24) & 0xff,
2481 ((uint64_t)BNXT_ULP_ACTION_BIT_COUNT >> 16) & 0xff,
2482 ((uint64_t)BNXT_ULP_ACTION_BIT_COUNT >> 8) & 0xff,
2483 (uint64_t)BNXT_ULP_ACTION_BIT_COUNT & 0xff,
2484 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
2487 .field_bit_size = 8,
2488 .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2491 .field_bit_size = 1,
2492 .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2495 .field_bit_size = 1,
2496 .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2499 .field_bit_size = 11,
2500 .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
2502 (BNXT_ULP_REGFILE_INDEX_ENCAP_PTR_0 >> 8) & 0xff,
2503 BNXT_ULP_REGFILE_INDEX_ENCAP_PTR_0 & 0xff,
2504 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
2505 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
2508 .field_bit_size = 10,
2509 .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2512 .field_bit_size = 16,
2513 .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2516 .field_bit_size = 10,
2517 .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2520 .field_bit_size = 16,
2521 .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2524 .field_bit_size = 10,
2525 .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2528 .field_bit_size = 1,
2529 .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2532 .field_bit_size = 1,
2533 .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2536 .field_bit_size = 1,
2537 .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,
2539 (BNXT_ULP_CF_IDX_ACT_DEC_TTL >> 8) & 0xff,
2540 BNXT_ULP_CF_IDX_ACT_DEC_TTL & 0xff,
2541 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
2542 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
2545 .field_bit_size = 1,
2546 .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,
2548 (BNXT_ULP_CF_IDX_ACT_T_DEC_TTL >> 8) & 0xff,
2549 BNXT_ULP_CF_IDX_ACT_T_DEC_TTL & 0xff,
2550 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
2551 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
2554 .field_bit_size = 4,
2555 .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2558 .field_bit_size = 12,
2559 .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ACT_PROP,
2561 (BNXT_ULP_ACT_PROP_IDX_VPORT >> 8) & 0xff,
2562 BNXT_ULP_ACT_PROP_IDX_VPORT & 0xff,
2563 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
2564 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
2567 .field_bit_size = 1,
2568 .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2571 .field_bit_size = 1,
2572 .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2575 .field_bit_size = 2,
2576 .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2579 .field_bit_size = 1,
2580 .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ACT_BIT,
2582 ((uint64_t)BNXT_ULP_ACTION_BIT_DROP >> 56) & 0xff,
2583 ((uint64_t)BNXT_ULP_ACTION_BIT_DROP >> 48) & 0xff,
2584 ((uint64_t)BNXT_ULP_ACTION_BIT_DROP >> 40) & 0xff,
2585 ((uint64_t)BNXT_ULP_ACTION_BIT_DROP >> 32) & 0xff,
2586 ((uint64_t)BNXT_ULP_ACTION_BIT_DROP >> 24) & 0xff,
2587 ((uint64_t)BNXT_ULP_ACTION_BIT_DROP >> 16) & 0xff,
2588 ((uint64_t)BNXT_ULP_ACTION_BIT_DROP >> 8) & 0xff,
2589 (uint64_t)BNXT_ULP_ACTION_BIT_DROP & 0xff,
2590 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
2593 .field_bit_size = 1,
2594 .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2597 .field_bit_size = 1,
2598 .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO