1 /* SPDX-License-Identifier: BSD-3-Clause
2 * Copyright(c) 2014-2020 Broadcom
7 * date: Mon Mar 9 02:37:53 2020
11 #include "ulp_template_db.h"
12 #include "ulp_template_field_db.h"
13 #include "ulp_template_struct.h"
14 #include "ulp_rte_parser.h"
16 uint32_t ulp_act_prop_map_table[] = {
17 [BNXT_ULP_ACT_PROP_IDX_ENCAP_TUN_SZ] =
18 BNXT_ULP_ACT_PROP_SZ_ENCAP_TUN_SZ,
19 [BNXT_ULP_ACT_PROP_IDX_ENCAP_IP_SZ] =
20 BNXT_ULP_ACT_PROP_SZ_ENCAP_IP_SZ,
21 [BNXT_ULP_ACT_PROP_IDX_ENCAP_VTAG_SZ] =
22 BNXT_ULP_ACT_PROP_SZ_ENCAP_VTAG_SZ,
23 [BNXT_ULP_ACT_PROP_IDX_ENCAP_VTAG_TYPE] =
24 BNXT_ULP_ACT_PROP_SZ_ENCAP_VTAG_TYPE,
25 [BNXT_ULP_ACT_PROP_IDX_ENCAP_VTAG_NUM] =
26 BNXT_ULP_ACT_PROP_SZ_ENCAP_VTAG_NUM,
27 [BNXT_ULP_ACT_PROP_IDX_ENCAP_L3_TYPE] =
28 BNXT_ULP_ACT_PROP_SZ_ENCAP_L3_TYPE,
29 [BNXT_ULP_ACT_PROP_IDX_MPLS_POP_NUM] =
30 BNXT_ULP_ACT_PROP_SZ_MPLS_POP_NUM,
31 [BNXT_ULP_ACT_PROP_IDX_MPLS_PUSH_NUM] =
32 BNXT_ULP_ACT_PROP_SZ_MPLS_PUSH_NUM,
33 [BNXT_ULP_ACT_PROP_IDX_PORT_ID] =
34 BNXT_ULP_ACT_PROP_SZ_PORT_ID,
35 [BNXT_ULP_ACT_PROP_IDX_VNIC] =
36 BNXT_ULP_ACT_PROP_SZ_VNIC,
37 [BNXT_ULP_ACT_PROP_IDX_VPORT] =
38 BNXT_ULP_ACT_PROP_SZ_VPORT,
39 [BNXT_ULP_ACT_PROP_IDX_MARK] =
40 BNXT_ULP_ACT_PROP_SZ_MARK,
41 [BNXT_ULP_ACT_PROP_IDX_COUNT] =
42 BNXT_ULP_ACT_PROP_SZ_COUNT,
43 [BNXT_ULP_ACT_PROP_IDX_METER] =
44 BNXT_ULP_ACT_PROP_SZ_METER,
45 [BNXT_ULP_ACT_PROP_IDX_SET_MAC_SRC] =
46 BNXT_ULP_ACT_PROP_SZ_SET_MAC_SRC,
47 [BNXT_ULP_ACT_PROP_IDX_SET_MAC_DST] =
48 BNXT_ULP_ACT_PROP_SZ_SET_MAC_DST,
49 [BNXT_ULP_ACT_PROP_IDX_OF_PUSH_VLAN] =
50 BNXT_ULP_ACT_PROP_SZ_OF_PUSH_VLAN,
51 [BNXT_ULP_ACT_PROP_IDX_OF_SET_VLAN_PCP] =
52 BNXT_ULP_ACT_PROP_SZ_OF_SET_VLAN_PCP,
53 [BNXT_ULP_ACT_PROP_IDX_OF_SET_VLAN_VID] =
54 BNXT_ULP_ACT_PROP_SZ_OF_SET_VLAN_VID,
55 [BNXT_ULP_ACT_PROP_IDX_SET_IPV4_SRC] =
56 BNXT_ULP_ACT_PROP_SZ_SET_IPV4_SRC,
57 [BNXT_ULP_ACT_PROP_IDX_SET_IPV4_DST] =
58 BNXT_ULP_ACT_PROP_SZ_SET_IPV4_DST,
59 [BNXT_ULP_ACT_PROP_IDX_SET_IPV6_SRC] =
60 BNXT_ULP_ACT_PROP_SZ_SET_IPV6_SRC,
61 [BNXT_ULP_ACT_PROP_IDX_SET_IPV6_DST] =
62 BNXT_ULP_ACT_PROP_SZ_SET_IPV6_DST,
63 [BNXT_ULP_ACT_PROP_IDX_SET_TP_SRC] =
64 BNXT_ULP_ACT_PROP_SZ_SET_TP_SRC,
65 [BNXT_ULP_ACT_PROP_IDX_SET_TP_DST] =
66 BNXT_ULP_ACT_PROP_SZ_SET_TP_DST,
67 [BNXT_ULP_ACT_PROP_IDX_OF_PUSH_MPLS_0] =
68 BNXT_ULP_ACT_PROP_SZ_OF_PUSH_MPLS_0,
69 [BNXT_ULP_ACT_PROP_IDX_OF_PUSH_MPLS_1] =
70 BNXT_ULP_ACT_PROP_SZ_OF_PUSH_MPLS_1,
71 [BNXT_ULP_ACT_PROP_IDX_OF_PUSH_MPLS_2] =
72 BNXT_ULP_ACT_PROP_SZ_OF_PUSH_MPLS_2,
73 [BNXT_ULP_ACT_PROP_IDX_OF_PUSH_MPLS_3] =
74 BNXT_ULP_ACT_PROP_SZ_OF_PUSH_MPLS_3,
75 [BNXT_ULP_ACT_PROP_IDX_OF_PUSH_MPLS_4] =
76 BNXT_ULP_ACT_PROP_SZ_OF_PUSH_MPLS_4,
77 [BNXT_ULP_ACT_PROP_IDX_OF_PUSH_MPLS_5] =
78 BNXT_ULP_ACT_PROP_SZ_OF_PUSH_MPLS_5,
79 [BNXT_ULP_ACT_PROP_IDX_OF_PUSH_MPLS_6] =
80 BNXT_ULP_ACT_PROP_SZ_OF_PUSH_MPLS_6,
81 [BNXT_ULP_ACT_PROP_IDX_OF_PUSH_MPLS_7] =
82 BNXT_ULP_ACT_PROP_SZ_OF_PUSH_MPLS_7,
83 [BNXT_ULP_ACT_PROP_IDX_ENCAP_L2_DMAC] =
84 BNXT_ULP_ACT_PROP_SZ_ENCAP_L2_DMAC,
85 [BNXT_ULP_ACT_PROP_IDX_ENCAP_L2_SMAC] =
86 BNXT_ULP_ACT_PROP_SZ_ENCAP_L2_SMAC,
87 [BNXT_ULP_ACT_PROP_IDX_ENCAP_VTAG] =
88 BNXT_ULP_ACT_PROP_SZ_ENCAP_VTAG,
89 [BNXT_ULP_ACT_PROP_IDX_ENCAP_IP] =
90 BNXT_ULP_ACT_PROP_SZ_ENCAP_IP,
91 [BNXT_ULP_ACT_PROP_IDX_ENCAP_IP_SRC] =
92 BNXT_ULP_ACT_PROP_SZ_ENCAP_IP_SRC,
93 [BNXT_ULP_ACT_PROP_IDX_ENCAP_UDP] =
94 BNXT_ULP_ACT_PROP_SZ_ENCAP_UDP,
95 [BNXT_ULP_ACT_PROP_IDX_ENCAP_TUN] =
96 BNXT_ULP_ACT_PROP_SZ_ENCAP_TUN,
97 [BNXT_ULP_ACT_PROP_IDX_LAST] =
98 BNXT_ULP_ACT_PROP_SZ_LAST
101 struct bnxt_ulp_rte_act_info ulp_act_info[] = {
102 [RTE_FLOW_ACTION_TYPE_END] = {
103 .act_type = BNXT_ULP_ACT_TYPE_END,
104 .proto_act_func = NULL
106 [RTE_FLOW_ACTION_TYPE_VOID] = {
107 .act_type = BNXT_ULP_ACT_TYPE_SUPPORTED,
108 .proto_act_func = ulp_rte_void_act_handler
110 [RTE_FLOW_ACTION_TYPE_PASSTHRU] = {
111 .act_type = BNXT_ULP_ACT_TYPE_NOT_SUPPORTED,
112 .proto_act_func = NULL
114 [RTE_FLOW_ACTION_TYPE_JUMP] = {
115 .act_type = BNXT_ULP_ACT_TYPE_NOT_SUPPORTED,
116 .proto_act_func = NULL
118 [RTE_FLOW_ACTION_TYPE_MARK] = {
119 .act_type = BNXT_ULP_ACT_TYPE_SUPPORTED,
120 .proto_act_func = ulp_rte_mark_act_handler
122 [RTE_FLOW_ACTION_TYPE_FLAG] = {
123 .act_type = BNXT_ULP_ACT_TYPE_NOT_SUPPORTED,
124 .proto_act_func = NULL
126 [RTE_FLOW_ACTION_TYPE_QUEUE] = {
127 .act_type = BNXT_ULP_ACT_TYPE_NOT_SUPPORTED,
128 .proto_act_func = NULL
130 [RTE_FLOW_ACTION_TYPE_DROP] = {
131 .act_type = BNXT_ULP_ACT_TYPE_SUPPORTED,
132 .proto_act_func = ulp_rte_drop_act_handler
134 [RTE_FLOW_ACTION_TYPE_COUNT] = {
135 .act_type = BNXT_ULP_ACT_TYPE_SUPPORTED,
136 .proto_act_func = ulp_rte_count_act_handler
138 [RTE_FLOW_ACTION_TYPE_RSS] = {
139 .act_type = BNXT_ULP_ACT_TYPE_SUPPORTED,
140 .proto_act_func = ulp_rte_rss_act_handler
142 [RTE_FLOW_ACTION_TYPE_PF] = {
143 .act_type = BNXT_ULP_ACT_TYPE_SUPPORTED,
144 .proto_act_func = ulp_rte_pf_act_handler
146 [RTE_FLOW_ACTION_TYPE_VF] = {
147 .act_type = BNXT_ULP_ACT_TYPE_SUPPORTED,
148 .proto_act_func = ulp_rte_vf_act_handler
150 [RTE_FLOW_ACTION_TYPE_PHY_PORT] = {
151 .act_type = BNXT_ULP_ACT_TYPE_SUPPORTED,
152 .proto_act_func = ulp_rte_phy_port_act_handler
154 [RTE_FLOW_ACTION_TYPE_PORT_ID] = {
155 .act_type = BNXT_ULP_ACT_TYPE_SUPPORTED,
156 .proto_act_func = ulp_rte_port_id_act_handler
158 [RTE_FLOW_ACTION_TYPE_METER] = {
159 .act_type = BNXT_ULP_ACT_TYPE_NOT_SUPPORTED,
160 .proto_act_func = NULL
162 [RTE_FLOW_ACTION_TYPE_SECURITY] = {
163 .act_type = BNXT_ULP_ACT_TYPE_NOT_SUPPORTED,
164 .proto_act_func = NULL
166 [RTE_FLOW_ACTION_TYPE_OF_SET_MPLS_TTL] = {
167 .act_type = BNXT_ULP_ACT_TYPE_NOT_SUPPORTED,
168 .proto_act_func = NULL
170 [RTE_FLOW_ACTION_TYPE_OF_DEC_MPLS_TTL] = {
171 .act_type = BNXT_ULP_ACT_TYPE_NOT_SUPPORTED,
172 .proto_act_func = NULL
174 [RTE_FLOW_ACTION_TYPE_OF_SET_NW_TTL] = {
175 .act_type = BNXT_ULP_ACT_TYPE_NOT_SUPPORTED,
176 .proto_act_func = NULL
178 [RTE_FLOW_ACTION_TYPE_OF_DEC_NW_TTL] = {
179 .act_type = BNXT_ULP_ACT_TYPE_NOT_SUPPORTED,
180 .proto_act_func = NULL
182 [RTE_FLOW_ACTION_TYPE_OF_COPY_TTL_OUT] = {
183 .act_type = BNXT_ULP_ACT_TYPE_NOT_SUPPORTED,
184 .proto_act_func = NULL
186 [RTE_FLOW_ACTION_TYPE_OF_COPY_TTL_IN] = {
187 .act_type = BNXT_ULP_ACT_TYPE_NOT_SUPPORTED,
188 .proto_act_func = NULL
190 [RTE_FLOW_ACTION_TYPE_OF_POP_VLAN] = {
191 .act_type = BNXT_ULP_ACT_TYPE_NOT_SUPPORTED,
192 .proto_act_func = NULL
194 [RTE_FLOW_ACTION_TYPE_OF_PUSH_VLAN] = {
195 .act_type = BNXT_ULP_ACT_TYPE_NOT_SUPPORTED,
196 .proto_act_func = NULL
198 [RTE_FLOW_ACTION_TYPE_OF_SET_VLAN_VID] = {
199 .act_type = BNXT_ULP_ACT_TYPE_NOT_SUPPORTED,
200 .proto_act_func = NULL
202 [RTE_FLOW_ACTION_TYPE_OF_SET_VLAN_PCP] = {
203 .act_type = BNXT_ULP_ACT_TYPE_NOT_SUPPORTED,
204 .proto_act_func = NULL
206 [RTE_FLOW_ACTION_TYPE_OF_POP_MPLS] = {
207 .act_type = BNXT_ULP_ACT_TYPE_NOT_SUPPORTED,
208 .proto_act_func = NULL
210 [RTE_FLOW_ACTION_TYPE_OF_PUSH_MPLS] = {
211 .act_type = BNXT_ULP_ACT_TYPE_NOT_SUPPORTED,
212 .proto_act_func = NULL
214 [RTE_FLOW_ACTION_TYPE_VXLAN_ENCAP] = {
215 .act_type = BNXT_ULP_ACT_TYPE_SUPPORTED,
216 .proto_act_func = ulp_rte_vxlan_encap_act_handler
218 [RTE_FLOW_ACTION_TYPE_VXLAN_DECAP] = {
219 .act_type = BNXT_ULP_ACT_TYPE_SUPPORTED,
220 .proto_act_func = ulp_rte_vxlan_decap_act_handler
222 [RTE_FLOW_ACTION_TYPE_NVGRE_ENCAP] = {
223 .act_type = BNXT_ULP_ACT_TYPE_NOT_SUPPORTED,
224 .proto_act_func = NULL
226 [RTE_FLOW_ACTION_TYPE_NVGRE_DECAP] = {
227 .act_type = BNXT_ULP_ACT_TYPE_NOT_SUPPORTED,
228 .proto_act_func = NULL
230 [RTE_FLOW_ACTION_TYPE_RAW_ENCAP] = {
231 .act_type = BNXT_ULP_ACT_TYPE_NOT_SUPPORTED,
232 .proto_act_func = NULL
234 [RTE_FLOW_ACTION_TYPE_RAW_DECAP] = {
235 .act_type = BNXT_ULP_ACT_TYPE_NOT_SUPPORTED,
236 .proto_act_func = NULL
238 [RTE_FLOW_ACTION_TYPE_SET_IPV4_SRC] = {
239 .act_type = BNXT_ULP_ACT_TYPE_NOT_SUPPORTED,
240 .proto_act_func = NULL
242 [RTE_FLOW_ACTION_TYPE_SET_IPV4_DST] = {
243 .act_type = BNXT_ULP_ACT_TYPE_NOT_SUPPORTED,
244 .proto_act_func = NULL
246 [RTE_FLOW_ACTION_TYPE_SET_IPV6_SRC] = {
247 .act_type = BNXT_ULP_ACT_TYPE_NOT_SUPPORTED,
248 .proto_act_func = NULL
250 [RTE_FLOW_ACTION_TYPE_SET_IPV6_DST] = {
251 .act_type = BNXT_ULP_ACT_TYPE_NOT_SUPPORTED,
252 .proto_act_func = NULL
254 [RTE_FLOW_ACTION_TYPE_SET_TP_SRC] = {
255 .act_type = BNXT_ULP_ACT_TYPE_NOT_SUPPORTED,
256 .proto_act_func = NULL
258 [RTE_FLOW_ACTION_TYPE_SET_TP_DST] = {
259 .act_type = BNXT_ULP_ACT_TYPE_NOT_SUPPORTED,
260 .proto_act_func = NULL
262 [RTE_FLOW_ACTION_TYPE_MAC_SWAP] = {
263 .act_type = BNXT_ULP_ACT_TYPE_NOT_SUPPORTED,
264 .proto_act_func = NULL
266 [RTE_FLOW_ACTION_TYPE_DEC_TTL] = {
267 .act_type = BNXT_ULP_ACT_TYPE_NOT_SUPPORTED,
268 .proto_act_func = NULL
270 [RTE_FLOW_ACTION_TYPE_SET_TTL] = {
271 .act_type = BNXT_ULP_ACT_TYPE_NOT_SUPPORTED,
272 .proto_act_func = NULL
274 [RTE_FLOW_ACTION_TYPE_SET_MAC_SRC] = {
275 .act_type = BNXT_ULP_ACT_TYPE_NOT_SUPPORTED,
276 .proto_act_func = NULL
278 [RTE_FLOW_ACTION_TYPE_SET_MAC_DST] = {
279 .act_type = BNXT_ULP_ACT_TYPE_NOT_SUPPORTED,
280 .proto_act_func = NULL
282 [RTE_FLOW_ACTION_TYPE_INC_TCP_SEQ] = {
283 .act_type = BNXT_ULP_ACT_TYPE_NOT_SUPPORTED,
284 .proto_act_func = NULL
286 [RTE_FLOW_ACTION_TYPE_DEC_TCP_SEQ] = {
287 .act_type = BNXT_ULP_ACT_TYPE_NOT_SUPPORTED,
288 .proto_act_func = NULL
290 [RTE_FLOW_ACTION_TYPE_INC_TCP_ACK] = {
291 .act_type = BNXT_ULP_ACT_TYPE_NOT_SUPPORTED,
292 .proto_act_func = NULL
294 [RTE_FLOW_ACTION_TYPE_DEC_TCP_ACK] = {
295 .act_type = BNXT_ULP_ACT_TYPE_NOT_SUPPORTED,
296 .proto_act_func = NULL
300 struct bnxt_ulp_device_params ulp_device_params[] = {
301 [BNXT_ULP_DEVICE_ID_WH_PLUS] = {
302 .global_fid_enable = BNXT_ULP_SYM_YES,
303 .byte_order = (enum bnxt_ulp_byte_order)
304 BNXT_ULP_SYM_LITTLE_ENDIAN,
305 .encap_byte_swap = 1,
306 .lfid_entries = 16384,
307 .lfid_entry_size = 4,
308 .gfid_entries = 65536,
309 .gfid_entry_size = 4,
311 .num_resources_per_flow = 8
315 struct bnxt_ulp_rte_hdr_info ulp_hdr_info[] = {
316 [RTE_FLOW_ITEM_TYPE_END] = {
317 .hdr_type = BNXT_ULP_HDR_TYPE_END,
318 .proto_hdr_func = NULL
320 [RTE_FLOW_ITEM_TYPE_VOID] = {
321 .hdr_type = BNXT_ULP_HDR_TYPE_SUPPORTED,
322 .proto_hdr_func = ulp_rte_void_hdr_handler
324 [RTE_FLOW_ITEM_TYPE_INVERT] = {
325 .hdr_type = BNXT_ULP_HDR_TYPE_NOT_SUPPORTED,
326 .proto_hdr_func = NULL
328 [RTE_FLOW_ITEM_TYPE_ANY] = {
329 .hdr_type = BNXT_ULP_HDR_TYPE_NOT_SUPPORTED,
330 .proto_hdr_func = NULL
332 [RTE_FLOW_ITEM_TYPE_PF] = {
333 .hdr_type = BNXT_ULP_HDR_TYPE_SUPPORTED,
334 .proto_hdr_func = ulp_rte_pf_hdr_handler
336 [RTE_FLOW_ITEM_TYPE_VF] = {
337 .hdr_type = BNXT_ULP_HDR_TYPE_SUPPORTED,
338 .proto_hdr_func = ulp_rte_vf_hdr_handler
340 [RTE_FLOW_ITEM_TYPE_PHY_PORT] = {
341 .hdr_type = BNXT_ULP_HDR_TYPE_SUPPORTED,
342 .proto_hdr_func = ulp_rte_phy_port_hdr_handler
344 [RTE_FLOW_ITEM_TYPE_PORT_ID] = {
345 .hdr_type = BNXT_ULP_HDR_TYPE_SUPPORTED,
346 .proto_hdr_func = ulp_rte_port_id_hdr_handler
348 [RTE_FLOW_ITEM_TYPE_RAW] = {
349 .hdr_type = BNXT_ULP_HDR_TYPE_NOT_SUPPORTED,
350 .proto_hdr_func = NULL
352 [RTE_FLOW_ITEM_TYPE_ETH] = {
353 .hdr_type = BNXT_ULP_HDR_TYPE_SUPPORTED,
354 .proto_hdr_func = ulp_rte_eth_hdr_handler
356 [RTE_FLOW_ITEM_TYPE_VLAN] = {
357 .hdr_type = BNXT_ULP_HDR_TYPE_SUPPORTED,
358 .proto_hdr_func = ulp_rte_vlan_hdr_handler
360 [RTE_FLOW_ITEM_TYPE_IPV4] = {
361 .hdr_type = BNXT_ULP_HDR_TYPE_SUPPORTED,
362 .proto_hdr_func = ulp_rte_ipv4_hdr_handler
364 [RTE_FLOW_ITEM_TYPE_IPV6] = {
365 .hdr_type = BNXT_ULP_HDR_TYPE_SUPPORTED,
366 .proto_hdr_func = ulp_rte_ipv6_hdr_handler
368 [RTE_FLOW_ITEM_TYPE_ICMP] = {
369 .hdr_type = BNXT_ULP_HDR_TYPE_NOT_SUPPORTED,
370 .proto_hdr_func = NULL
372 [RTE_FLOW_ITEM_TYPE_UDP] = {
373 .hdr_type = BNXT_ULP_HDR_TYPE_SUPPORTED,
374 .proto_hdr_func = ulp_rte_udp_hdr_handler
376 [RTE_FLOW_ITEM_TYPE_TCP] = {
377 .hdr_type = BNXT_ULP_HDR_TYPE_SUPPORTED,
378 .proto_hdr_func = ulp_rte_tcp_hdr_handler
380 [RTE_FLOW_ITEM_TYPE_SCTP] = {
381 .hdr_type = BNXT_ULP_HDR_TYPE_NOT_SUPPORTED,
382 .proto_hdr_func = NULL
384 [RTE_FLOW_ITEM_TYPE_VXLAN] = {
385 .hdr_type = BNXT_ULP_HDR_TYPE_SUPPORTED,
386 .proto_hdr_func = ulp_rte_vxlan_hdr_handler
388 [RTE_FLOW_ITEM_TYPE_E_TAG] = {
389 .hdr_type = BNXT_ULP_HDR_TYPE_NOT_SUPPORTED,
390 .proto_hdr_func = NULL
392 [RTE_FLOW_ITEM_TYPE_NVGRE] = {
393 .hdr_type = BNXT_ULP_HDR_TYPE_NOT_SUPPORTED,
394 .proto_hdr_func = NULL
396 [RTE_FLOW_ITEM_TYPE_MPLS] = {
397 .hdr_type = BNXT_ULP_HDR_TYPE_NOT_SUPPORTED,
398 .proto_hdr_func = NULL
400 [RTE_FLOW_ITEM_TYPE_GRE] = {
401 .hdr_type = BNXT_ULP_HDR_TYPE_NOT_SUPPORTED,
402 .proto_hdr_func = NULL
404 [RTE_FLOW_ITEM_TYPE_FUZZY] = {
405 .hdr_type = BNXT_ULP_HDR_TYPE_NOT_SUPPORTED,
406 .proto_hdr_func = NULL
408 [RTE_FLOW_ITEM_TYPE_GTP] = {
409 .hdr_type = BNXT_ULP_HDR_TYPE_NOT_SUPPORTED,
410 .proto_hdr_func = NULL
412 [RTE_FLOW_ITEM_TYPE_GTPC] = {
413 .hdr_type = BNXT_ULP_HDR_TYPE_NOT_SUPPORTED,
414 .proto_hdr_func = NULL
416 [RTE_FLOW_ITEM_TYPE_GTPU] = {
417 .hdr_type = BNXT_ULP_HDR_TYPE_NOT_SUPPORTED,
418 .proto_hdr_func = NULL
420 [RTE_FLOW_ITEM_TYPE_ESP] = {
421 .hdr_type = BNXT_ULP_HDR_TYPE_NOT_SUPPORTED,
422 .proto_hdr_func = NULL
424 [RTE_FLOW_ITEM_TYPE_GENEVE] = {
425 .hdr_type = BNXT_ULP_HDR_TYPE_NOT_SUPPORTED,
426 .proto_hdr_func = NULL
428 [RTE_FLOW_ITEM_TYPE_VXLAN_GPE] = {
429 .hdr_type = BNXT_ULP_HDR_TYPE_NOT_SUPPORTED,
430 .proto_hdr_func = NULL
432 [RTE_FLOW_ITEM_TYPE_ARP_ETH_IPV4] = {
433 .hdr_type = BNXT_ULP_HDR_TYPE_NOT_SUPPORTED,
434 .proto_hdr_func = NULL
436 [RTE_FLOW_ITEM_TYPE_IPV6_EXT] = {
437 .hdr_type = BNXT_ULP_HDR_TYPE_NOT_SUPPORTED,
438 .proto_hdr_func = NULL
440 [RTE_FLOW_ITEM_TYPE_ICMP6] = {
441 .hdr_type = BNXT_ULP_HDR_TYPE_NOT_SUPPORTED,
442 .proto_hdr_func = NULL
444 [RTE_FLOW_ITEM_TYPE_ICMP6_ND_NS] = {
445 .hdr_type = BNXT_ULP_HDR_TYPE_NOT_SUPPORTED,
446 .proto_hdr_func = NULL
448 [RTE_FLOW_ITEM_TYPE_ICMP6_ND_NA] = {
449 .hdr_type = BNXT_ULP_HDR_TYPE_NOT_SUPPORTED,
450 .proto_hdr_func = NULL
452 [RTE_FLOW_ITEM_TYPE_ICMP6_ND_OPT] = {
453 .hdr_type = BNXT_ULP_HDR_TYPE_NOT_SUPPORTED,
454 .proto_hdr_func = NULL
456 [RTE_FLOW_ITEM_TYPE_ICMP6_ND_OPT_SLA_ETH] = {
457 .hdr_type = BNXT_ULP_HDR_TYPE_NOT_SUPPORTED,
458 .proto_hdr_func = NULL
460 [RTE_FLOW_ITEM_TYPE_ICMP6_ND_OPT_TLA_ETH] = {
461 .hdr_type = BNXT_ULP_HDR_TYPE_NOT_SUPPORTED,
462 .proto_hdr_func = NULL
464 [RTE_FLOW_ITEM_TYPE_MARK] = {
465 .hdr_type = BNXT_ULP_HDR_TYPE_NOT_SUPPORTED,
466 .proto_hdr_func = NULL
468 [RTE_FLOW_ITEM_TYPE_META] = {
469 .hdr_type = BNXT_ULP_HDR_TYPE_NOT_SUPPORTED,
470 .proto_hdr_func = NULL
472 [RTE_FLOW_ITEM_TYPE_GRE_KEY] = {
473 .hdr_type = BNXT_ULP_HDR_TYPE_NOT_SUPPORTED,
474 .proto_hdr_func = NULL
476 [RTE_FLOW_ITEM_TYPE_GTP_PSC] = {
477 .hdr_type = BNXT_ULP_HDR_TYPE_NOT_SUPPORTED,
478 .proto_hdr_func = NULL
480 [RTE_FLOW_ITEM_TYPE_PPPOES] = {
481 .hdr_type = BNXT_ULP_HDR_TYPE_NOT_SUPPORTED,
482 .proto_hdr_func = NULL
484 [RTE_FLOW_ITEM_TYPE_PPPOED] = {
485 .hdr_type = BNXT_ULP_HDR_TYPE_NOT_SUPPORTED,
486 .proto_hdr_func = NULL
488 [RTE_FLOW_ITEM_TYPE_PPPOE_PROTO_ID] = {
489 .hdr_type = BNXT_ULP_HDR_TYPE_NOT_SUPPORTED,
490 .proto_hdr_func = NULL
492 [RTE_FLOW_ITEM_TYPE_NSH] = {
493 .hdr_type = BNXT_ULP_HDR_TYPE_NOT_SUPPORTED,
494 .proto_hdr_func = NULL
496 [RTE_FLOW_ITEM_TYPE_IGMP] = {
497 .hdr_type = BNXT_ULP_HDR_TYPE_NOT_SUPPORTED,
498 .proto_hdr_func = NULL
500 [RTE_FLOW_ITEM_TYPE_AH] = {
501 .hdr_type = BNXT_ULP_HDR_TYPE_NOT_SUPPORTED,
502 .proto_hdr_func = NULL
504 [RTE_FLOW_ITEM_TYPE_HIGIG2] = {
505 .hdr_type = BNXT_ULP_HDR_TYPE_NOT_SUPPORTED,
506 .proto_hdr_func = NULL
510 uint32_t bnxt_ulp_encap_vtag_map[] = {
511 [0] = BNXT_ULP_ENCAP_VTAG_ENCODING_NOP,
512 [1] = BNXT_ULP_ENCAP_VTAG_ENCODING_STAG_ECAP_PRI,
513 [2] = BNXT_ULP_ENCAP_VTAG_ENCODING_DTAG_ECAP_PRI
516 uint16_t ulp_class_sig_tbl[BNXT_ULP_CLASS_SIG_TBL_MAX_SZ] = {
517 [BNXT_ULP_CLASS_HID_0092] = 1
520 struct bnxt_ulp_class_match_info ulp_class_match_list[] = {
522 .class_hid = BNXT_ULP_CLASS_HID_0092,
524 BNXT_ULP_HDR_BIT_O_ETH |
525 BNXT_ULP_HDR_BIT_O_IPV4 |
526 BNXT_ULP_HDR_BIT_O_UDP |
527 BNXT_ULP_FLOW_DIR_BITMASK_ING },
528 .field_sig = { .bits =
529 BNXT_ULP_HF0_BITMASK_O_IPV4_SRC_ADDR |
530 BNXT_ULP_HF0_BITMASK_O_IPV4_DST_ADDR |
531 BNXT_ULP_HF0_BITMASK_O_UDP_SRC_PORT |
532 BNXT_ULP_HF0_BITMASK_O_UDP_DST_PORT |
533 BNXT_ULP_MATCH_TYPE_BITMASK_EM },
540 uint16_t ulp_act_sig_tbl[BNXT_ULP_ACT_SIG_TBL_MAX_SZ] = {
541 [BNXT_ULP_ACT_HID_0029] = 1
544 struct bnxt_ulp_act_match_info ulp_act_match_list[] = {
546 .act_hid = BNXT_ULP_ACT_HID_0029,
548 BNXT_ULP_ACTION_BIT_MARK |
549 BNXT_ULP_ACTION_BIT_RSS |
550 BNXT_ULP_ACTION_BIT_VNIC |
551 BNXT_ULP_FLOW_DIR_BITMASK_ING },
556 struct bnxt_ulp_mapper_tbl_list_info ulp_class_tmpl_list[] = {
557 [((0 << BNXT_ULP_LOG2_MAX_NUM_DEV) |
558 BNXT_ULP_DEVICE_ID_WH_PLUS)] = {
559 .device_name = BNXT_ULP_DEVICE_ID_WH_PLUS,
565 struct bnxt_ulp_mapper_class_tbl_info ulp_class_tbl_list[] = {
567 .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
568 .table_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM,
569 .direction = TF_DIR_RX,
570 .priority = BNXT_ULP_PRIORITY_LEVEL_0,
571 .srch_b4_alloc = BNXT_ULP_SEARCH_BEFORE_ALLOC_NO,
573 .blob_key_bit_size = 167,
575 .key_num_fields = 13,
576 .result_start_idx = 0,
577 .result_bit_size = 64,
578 .result_num_fields = 13,
579 .ident_start_idx = 0,
581 .mark_enable = BNXT_ULP_MARK_ENABLE_NO,
582 .critical_resource = 0,
583 .regfile_wr_idx = BNXT_ULP_REGFILE_INDEX_NOT_USED
586 .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
587 .table_type = TF_TCAM_TBL_TYPE_PROF_TCAM,
588 .direction = TF_DIR_RX,
589 .priority = BNXT_ULP_PRIORITY_LEVEL_0,
590 .srch_b4_alloc = BNXT_ULP_SEARCH_BEFORE_ALLOC_NO,
592 .blob_key_bit_size = 81,
594 .key_num_fields = 42,
595 .result_start_idx = 13,
596 .result_bit_size = 38,
597 .result_num_fields = 8,
598 .ident_start_idx = 2,
600 .mark_enable = BNXT_ULP_MARK_ENABLE_NO,
601 .critical_resource = 0,
602 .regfile_wr_idx = BNXT_ULP_REGFILE_INDEX_NOT_USED
605 .resource_func = BNXT_ULP_RESOURCE_FUNC_EM_TABLE,
606 .table_type = TF_MEM_EXTERNAL,
607 .direction = TF_DIR_RX,
608 .priority = BNXT_ULP_PRIORITY_NOT_USED,
609 .srch_b4_alloc = BNXT_ULP_SEARCH_BEFORE_ALLOC_NO,
611 .blob_key_bit_size = 448,
613 .key_num_fields = 11,
614 .result_start_idx = 21,
615 .result_bit_size = 64,
616 .result_num_fields = 9,
618 .mark_enable = BNXT_ULP_MARK_ENABLE_YES,
619 .critical_resource = 1,
620 .regfile_wr_idx = BNXT_ULP_REGFILE_INDEX_NOT_USED
624 struct bnxt_ulp_mapper_class_key_field_info ulp_class_key_field_list[] = {
626 .field_bit_size = 12,
627 .mask_opcode = BNXT_ULP_MASK_OPC_SET_TO_CONSTANT,
628 .mask_operand = {0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
629 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
630 .spec_opcode = BNXT_ULP_SPEC_OPC_SET_TO_CONSTANT,
631 .spec_operand = {0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
632 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
635 .field_bit_size = 12,
636 .mask_opcode = BNXT_ULP_MASK_OPC_SET_TO_CONSTANT,
637 .mask_operand = {0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
638 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
639 .spec_opcode = BNXT_ULP_SPEC_OPC_SET_TO_CONSTANT,
640 .spec_operand = {0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
641 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
644 .field_bit_size = 48,
645 .mask_opcode = BNXT_ULP_MASK_OPC_SET_TO_CONSTANT,
646 .mask_operand = {0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
647 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
648 .spec_opcode = BNXT_ULP_SPEC_OPC_SET_TO_CONSTANT,
649 .spec_operand = {0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
650 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
654 .mask_opcode = BNXT_ULP_MASK_OPC_SET_TO_HDR_FIELD,
655 .mask_operand = {(BNXT_ULP_HF0_IDX_SVIF_INDEX >> 8) & 0xff,
656 BNXT_ULP_HF0_IDX_SVIF_INDEX & 0xff,
657 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
658 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
659 .spec_opcode = BNXT_ULP_SPEC_OPC_SET_TO_HDR_FIELD,
660 .spec_operand = {(BNXT_ULP_HF0_IDX_SVIF_INDEX >> 8) & 0xff,
661 BNXT_ULP_HF0_IDX_SVIF_INDEX & 0xff,
662 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
663 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
667 .mask_opcode = BNXT_ULP_MASK_OPC_SET_TO_CONSTANT,
668 .mask_operand = {0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
669 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
670 .spec_opcode = BNXT_ULP_SPEC_OPC_SET_TO_CONSTANT,
671 .spec_operand = {0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
672 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
675 .field_bit_size = 12,
676 .mask_opcode = BNXT_ULP_MASK_OPC_SET_TO_CONSTANT,
677 .mask_operand = {0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
678 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
679 .spec_opcode = BNXT_ULP_SPEC_OPC_SET_TO_CONSTANT,
680 .spec_operand = {0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
681 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
684 .field_bit_size = 12,
685 .mask_opcode = BNXT_ULP_MASK_OPC_SET_TO_CONSTANT,
686 .mask_operand = {0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
687 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
688 .spec_opcode = BNXT_ULP_SPEC_OPC_SET_TO_CONSTANT,
689 .spec_operand = {0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
690 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
693 .field_bit_size = 48,
694 .mask_opcode = BNXT_ULP_MASK_OPC_SET_TO_CONSTANT,
695 .mask_operand = {0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
696 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
697 .spec_opcode = BNXT_ULP_SPEC_OPC_SET_TO_CONSTANT,
698 .spec_operand = {0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
699 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
703 .mask_opcode = BNXT_ULP_MASK_OPC_SET_TO_CONSTANT,
704 .mask_operand = {0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
705 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
706 .spec_opcode = BNXT_ULP_SPEC_OPC_SET_TO_CONSTANT,
707 .spec_operand = {0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
708 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
712 .mask_opcode = BNXT_ULP_MASK_OPC_SET_TO_CONSTANT,
713 .mask_operand = {0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
714 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
715 .spec_opcode = BNXT_ULP_SPEC_OPC_SET_TO_CONSTANT,
716 .spec_operand = {0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
717 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
721 .mask_opcode = BNXT_ULP_MASK_OPC_SET_TO_CONSTANT,
722 .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
723 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
724 .spec_opcode = BNXT_ULP_SPEC_OPC_SET_TO_CONSTANT,
725 .spec_operand = {BNXT_ULP_SYM_TUN_HDR_TYPE_NONE,
726 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
727 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
731 .mask_opcode = BNXT_ULP_MASK_OPC_SET_TO_CONSTANT,
732 .mask_operand = {0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
733 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
734 .spec_opcode = BNXT_ULP_SPEC_OPC_SET_TO_CONSTANT,
735 .spec_operand = {0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
736 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
740 .mask_opcode = BNXT_ULP_MASK_OPC_SET_TO_CONSTANT,
741 .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
742 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
743 .spec_opcode = BNXT_ULP_SPEC_OPC_SET_TO_CONSTANT,
744 .spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
745 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
749 .mask_opcode = BNXT_ULP_MASK_OPC_SET_TO_CONSTANT,
750 .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
751 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
752 .spec_opcode = BNXT_ULP_SPEC_OPC_SET_TO_CONSTANT,
753 .spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
754 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
758 .mask_opcode = BNXT_ULP_MASK_OPC_SET_TO_CONSTANT,
759 .mask_operand = {0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
760 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
761 .spec_opcode = BNXT_ULP_SPEC_OPC_SET_TO_CONSTANT,
762 .spec_operand = {0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
763 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
767 .mask_opcode = BNXT_ULP_MASK_OPC_SET_TO_CONSTANT,
768 .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
769 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
770 .spec_opcode = BNXT_ULP_SPEC_OPC_SET_TO_CONSTANT,
771 .spec_operand = {0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
772 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
776 .mask_opcode = BNXT_ULP_MASK_OPC_SET_TO_CONSTANT,
777 .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
778 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
779 .spec_opcode = BNXT_ULP_SPEC_OPC_SET_TO_CONSTANT,
780 .spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
781 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
785 .mask_opcode = BNXT_ULP_MASK_OPC_SET_TO_CONSTANT,
786 .mask_operand = {0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
787 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
788 .spec_opcode = BNXT_ULP_SPEC_OPC_SET_TO_CONSTANT,
789 .spec_operand = {0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
790 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
794 .mask_opcode = BNXT_ULP_MASK_OPC_SET_TO_CONSTANT,
795 .mask_operand = {0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
796 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
797 .spec_opcode = BNXT_ULP_SPEC_OPC_SET_TO_CONSTANT,
798 .spec_operand = {0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
799 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
803 .mask_opcode = BNXT_ULP_MASK_OPC_SET_TO_CONSTANT,
804 .mask_operand = {0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
805 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
806 .spec_opcode = BNXT_ULP_SPEC_OPC_SET_TO_CONSTANT,
807 .spec_operand = {0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
808 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
812 .mask_opcode = BNXT_ULP_MASK_OPC_SET_TO_CONSTANT,
813 .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
814 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
815 .spec_opcode = BNXT_ULP_SPEC_OPC_SET_TO_CONSTANT,
816 .spec_operand = {BNXT_ULP_SYM_L3_HDR_TYPE_IPV4,
817 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
818 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
822 .mask_opcode = BNXT_ULP_MASK_OPC_SET_TO_CONSTANT,
823 .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
824 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
825 .spec_opcode = BNXT_ULP_SPEC_OPC_SET_TO_CONSTANT,
826 .spec_operand = {0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
827 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
831 .mask_opcode = BNXT_ULP_MASK_OPC_SET_TO_CONSTANT,
832 .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
833 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
834 .spec_opcode = BNXT_ULP_SPEC_OPC_SET_TO_CONSTANT,
835 .spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
836 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
840 .mask_opcode = BNXT_ULP_MASK_OPC_SET_TO_CONSTANT,
841 .mask_operand = {0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
842 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
843 .spec_opcode = BNXT_ULP_SPEC_OPC_SET_TO_CONSTANT,
844 .spec_operand = {0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
845 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
849 .mask_opcode = BNXT_ULP_MASK_OPC_SET_TO_CONSTANT,
850 .mask_operand = {0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
851 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
852 .spec_opcode = BNXT_ULP_SPEC_OPC_SET_TO_CONSTANT,
853 .spec_operand = {0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
854 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
858 .mask_opcode = BNXT_ULP_MASK_OPC_SET_TO_CONSTANT,
859 .mask_operand = {0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
860 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
861 .spec_opcode = BNXT_ULP_SPEC_OPC_SET_TO_CONSTANT,
862 .spec_operand = {0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
863 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
867 .mask_opcode = BNXT_ULP_MASK_OPC_SET_TO_CONSTANT,
868 .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
869 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
870 .spec_opcode = BNXT_ULP_SPEC_OPC_SET_TO_CONSTANT,
871 .spec_operand = {BNXT_ULP_SYM_L2_HDR_TYPE_DIX,
872 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
873 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
877 .mask_opcode = BNXT_ULP_MASK_OPC_SET_TO_CONSTANT,
878 .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
879 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
880 .spec_opcode = BNXT_ULP_SPEC_OPC_SET_TO_CONSTANT,
881 .spec_operand = {0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
882 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
886 .mask_opcode = BNXT_ULP_MASK_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_SPEC_OPC_SET_TO_CONSTANT,
890 .spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
891 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
895 .mask_opcode = BNXT_ULP_MASK_OPC_SET_TO_CONSTANT,
896 .mask_operand = {0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
897 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
898 .spec_opcode = BNXT_ULP_SPEC_OPC_SET_TO_CONSTANT,
899 .spec_operand = {0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
900 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
904 .mask_opcode = BNXT_ULP_MASK_OPC_SET_TO_CONSTANT,
905 .mask_operand = {0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
906 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
907 .spec_opcode = BNXT_ULP_SPEC_OPC_SET_TO_CONSTANT,
908 .spec_operand = {BNXT_ULP_SYM_TUN_HDR_TYPE_NONE,
909 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
910 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
914 .mask_opcode = BNXT_ULP_MASK_OPC_SET_TO_CONSTANT,
915 .mask_operand = {0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
916 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
917 .spec_opcode = BNXT_ULP_SPEC_OPC_SET_TO_CONSTANT,
918 .spec_operand = {0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
919 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
923 .mask_opcode = BNXT_ULP_MASK_OPC_SET_TO_CONSTANT,
924 .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
925 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
926 .spec_opcode = BNXT_ULP_SPEC_OPC_SET_TO_CONSTANT,
927 .spec_operand = {0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
928 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
932 .mask_opcode = BNXT_ULP_MASK_OPC_SET_TO_CONSTANT,
933 .mask_operand = {0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
934 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
935 .spec_opcode = BNXT_ULP_SPEC_OPC_SET_TO_CONSTANT,
936 .spec_operand = {0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
937 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
941 .mask_opcode = BNXT_ULP_MASK_OPC_SET_TO_CONSTANT,
942 .mask_operand = {0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
943 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
944 .spec_opcode = BNXT_ULP_SPEC_OPC_SET_TO_CONSTANT,
945 .spec_operand = {BNXT_ULP_SYM_TL4_HDR_TYPE_UDP,
946 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
947 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
951 .mask_opcode = BNXT_ULP_MASK_OPC_SET_TO_CONSTANT,
952 .mask_operand = {0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
953 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
954 .spec_opcode = BNXT_ULP_SPEC_OPC_SET_TO_CONSTANT,
955 .spec_operand = {0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
956 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
960 .mask_opcode = BNXT_ULP_MASK_OPC_SET_TO_CONSTANT,
961 .mask_operand = {0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
962 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
963 .spec_opcode = BNXT_ULP_SPEC_OPC_SET_TO_CONSTANT,
964 .spec_operand = {0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
965 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
969 .mask_opcode = BNXT_ULP_MASK_OPC_SET_TO_CONSTANT,
970 .mask_operand = {0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
971 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
972 .spec_opcode = BNXT_ULP_SPEC_OPC_SET_TO_CONSTANT,
973 .spec_operand = {0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
974 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
978 .mask_opcode = BNXT_ULP_MASK_OPC_SET_TO_CONSTANT,
979 .mask_operand = {0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
980 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
981 .spec_opcode = BNXT_ULP_SPEC_OPC_SET_TO_CONSTANT,
982 .spec_operand = {0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
983 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
987 .mask_opcode = BNXT_ULP_MASK_OPC_SET_TO_CONSTANT,
988 .mask_operand = {0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
989 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
990 .spec_opcode = BNXT_ULP_SPEC_OPC_SET_TO_CONSTANT,
991 .spec_operand = {0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
992 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
996 .mask_opcode = BNXT_ULP_MASK_OPC_SET_TO_CONSTANT,
997 .mask_operand = {0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
998 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
999 .spec_opcode = BNXT_ULP_SPEC_OPC_SET_TO_CONSTANT,
1000 .spec_operand = {BNXT_ULP_SYM_TL3_HDR_TYPE_IPV4,
1001 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
1002 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
1005 .field_bit_size = 1,
1006 .mask_opcode = BNXT_ULP_MASK_OPC_SET_TO_CONSTANT,
1007 .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
1008 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
1009 .spec_opcode = BNXT_ULP_SPEC_OPC_SET_TO_CONSTANT,
1010 .spec_operand = {0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
1011 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
1014 .field_bit_size = 1,
1015 .mask_opcode = BNXT_ULP_MASK_OPC_SET_TO_CONSTANT,
1016 .mask_operand = {0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
1017 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
1018 .spec_opcode = BNXT_ULP_SPEC_OPC_SET_TO_CONSTANT,
1019 .spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
1020 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
1023 .field_bit_size = 1,
1024 .mask_opcode = BNXT_ULP_MASK_OPC_SET_TO_CONSTANT,
1025 .mask_operand = {0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
1026 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
1027 .spec_opcode = BNXT_ULP_SPEC_OPC_SET_TO_CONSTANT,
1028 .spec_operand = {0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
1029 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
1032 .field_bit_size = 1,
1033 .mask_opcode = BNXT_ULP_MASK_OPC_SET_TO_CONSTANT,
1034 .mask_operand = {0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
1035 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
1036 .spec_opcode = BNXT_ULP_SPEC_OPC_SET_TO_CONSTANT,
1037 .spec_operand = {0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
1038 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
1041 .field_bit_size = 2,
1042 .mask_opcode = BNXT_ULP_MASK_OPC_SET_TO_CONSTANT,
1043 .mask_operand = {0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
1044 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
1045 .spec_opcode = BNXT_ULP_SPEC_OPC_SET_TO_CONSTANT,
1046 .spec_operand = {0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
1047 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
1050 .field_bit_size = 2,
1051 .mask_opcode = BNXT_ULP_MASK_OPC_SET_TO_CONSTANT,
1052 .mask_operand = {0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
1053 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
1054 .spec_opcode = BNXT_ULP_SPEC_OPC_SET_TO_CONSTANT,
1055 .spec_operand = {BNXT_ULP_SYM_TL2_HDR_TYPE_DIX,
1056 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
1057 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
1060 .field_bit_size = 1,
1061 .mask_opcode = BNXT_ULP_MASK_OPC_SET_TO_CONSTANT,
1062 .mask_operand = {0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
1063 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
1064 .spec_opcode = BNXT_ULP_SPEC_OPC_SET_TO_CONSTANT,
1065 .spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
1066 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
1069 .field_bit_size = 1,
1070 .mask_opcode = BNXT_ULP_MASK_OPC_SET_TO_CONSTANT,
1071 .mask_operand = {0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
1072 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
1073 .spec_opcode = BNXT_ULP_SPEC_OPC_SET_TO_CONSTANT,
1074 .spec_operand = {0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
1075 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
1078 .field_bit_size = 9,
1079 .mask_opcode = BNXT_ULP_MASK_OPC_SET_TO_CONSTANT,
1080 .mask_operand = {0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
1081 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
1082 .spec_opcode = BNXT_ULP_SPEC_OPC_SET_TO_CONSTANT,
1083 .spec_operand = {0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
1084 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
1087 .field_bit_size = 7,
1088 .mask_opcode = BNXT_ULP_MASK_OPC_SET_TO_CONSTANT,
1089 .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
1090 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
1091 .spec_opcode = BNXT_ULP_SPEC_OPC_SET_TO_REGFILE,
1092 .spec_operand = {(BNXT_ULP_REGFILE_INDEX_PROF_FUNC_ID_0 >> 8) & 0xff,
1093 BNXT_ULP_REGFILE_INDEX_PROF_FUNC_ID_0 & 0xff,
1094 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
1095 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
1098 .field_bit_size = 1,
1099 .mask_opcode = BNXT_ULP_MASK_OPC_SET_TO_CONSTANT,
1100 .mask_operand = {0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
1101 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
1102 .spec_opcode = BNXT_ULP_SPEC_OPC_SET_TO_CONSTANT,
1103 .spec_operand = {0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
1104 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
1107 .field_bit_size = 2,
1108 .mask_opcode = BNXT_ULP_MASK_OPC_SET_TO_CONSTANT,
1109 .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
1110 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
1111 .spec_opcode = BNXT_ULP_SPEC_OPC_SET_TO_CONSTANT,
1112 .spec_operand = {0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
1113 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
1116 .field_bit_size = 4,
1117 .mask_opcode = BNXT_ULP_MASK_OPC_SET_TO_CONSTANT,
1118 .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
1119 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
1120 .spec_opcode = BNXT_ULP_SPEC_OPC_SET_TO_CONSTANT,
1121 .spec_operand = {BNXT_ULP_SYM_PKT_TYPE_L2,
1122 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
1123 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
1126 .field_bit_size = 1,
1127 .mask_opcode = BNXT_ULP_MASK_OPC_SET_TO_CONSTANT,
1128 .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
1129 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
1130 .spec_opcode = BNXT_ULP_SPEC_OPC_SET_TO_CONSTANT,
1131 .spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
1132 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
1135 .field_bit_size = 251,
1136 .mask_opcode = BNXT_ULP_MASK_OPC_SET_TO_CONSTANT,
1137 .mask_operand = {0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
1138 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
1139 .spec_opcode = BNXT_ULP_SPEC_OPC_ADD_PAD,
1140 .spec_operand = {0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
1141 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
1144 .field_bit_size = 3,
1145 .mask_opcode = BNXT_ULP_MASK_OPC_SET_TO_CONSTANT,
1146 .mask_operand = {0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
1147 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
1148 .spec_opcode = BNXT_ULP_SPEC_OPC_SET_TO_CONSTANT,
1149 .spec_operand = {0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
1150 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
1153 .field_bit_size = 16,
1154 .mask_opcode = BNXT_ULP_MASK_OPC_SET_TO_CONSTANT,
1155 .mask_operand = {0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
1156 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
1157 .spec_opcode = BNXT_ULP_SPEC_OPC_SET_TO_HDR_FIELD,
1158 .spec_operand = {(BNXT_ULP_HF0_IDX_O_UDP_DST_PORT >> 8) & 0xff,
1159 BNXT_ULP_HF0_IDX_O_UDP_DST_PORT & 0xff,
1160 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
1161 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
1164 .field_bit_size = 16,
1165 .mask_opcode = BNXT_ULP_MASK_OPC_SET_TO_CONSTANT,
1166 .mask_operand = {0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
1167 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
1168 .spec_opcode = BNXT_ULP_SPEC_OPC_SET_TO_HDR_FIELD,
1169 .spec_operand = {(BNXT_ULP_HF0_IDX_O_UDP_SRC_PORT >> 8) & 0xff,
1170 BNXT_ULP_HF0_IDX_O_UDP_SRC_PORT & 0xff,
1171 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
1172 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
1175 .field_bit_size = 8,
1176 .mask_opcode = BNXT_ULP_MASK_OPC_SET_TO_CONSTANT,
1177 .mask_operand = {0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
1178 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
1179 .spec_opcode = BNXT_ULP_SPEC_OPC_SET_TO_CONSTANT,
1180 .spec_operand = {BNXT_ULP_SYM_IP_PROTO_UDP,
1181 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
1182 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
1185 .field_bit_size = 32,
1186 .mask_opcode = BNXT_ULP_MASK_OPC_SET_TO_CONSTANT,
1187 .mask_operand = {0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
1188 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
1189 .spec_opcode = BNXT_ULP_SPEC_OPC_SET_TO_HDR_FIELD,
1190 .spec_operand = {(BNXT_ULP_HF0_IDX_O_IPV4_DST_ADDR >> 8) & 0xff,
1191 BNXT_ULP_HF0_IDX_O_IPV4_DST_ADDR & 0xff,
1192 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
1193 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
1196 .field_bit_size = 32,
1197 .mask_opcode = BNXT_ULP_MASK_OPC_SET_TO_CONSTANT,
1198 .mask_operand = {0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
1199 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
1200 .spec_opcode = BNXT_ULP_SPEC_OPC_SET_TO_HDR_FIELD,
1201 .spec_operand = {(BNXT_ULP_HF0_IDX_O_IPV4_SRC_ADDR >> 8) & 0xff,
1202 BNXT_ULP_HF0_IDX_O_IPV4_SRC_ADDR & 0xff,
1203 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
1204 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
1207 .field_bit_size = 48,
1208 .mask_opcode = BNXT_ULP_MASK_OPC_SET_TO_CONSTANT,
1209 .mask_operand = {0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
1210 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
1211 .spec_opcode = BNXT_ULP_SPEC_OPC_SET_TO_CONSTANT,
1212 .spec_operand = {0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
1213 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
1216 .field_bit_size = 24,
1217 .mask_opcode = BNXT_ULP_MASK_OPC_SET_TO_CONSTANT,
1218 .mask_operand = {0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
1219 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
1220 .spec_opcode = BNXT_ULP_SPEC_OPC_SET_TO_CONSTANT,
1221 .spec_operand = {0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
1222 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
1225 .field_bit_size = 10,
1226 .mask_opcode = BNXT_ULP_MASK_OPC_SET_TO_CONSTANT,
1227 .mask_operand = {0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
1228 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
1229 .spec_opcode = BNXT_ULP_SPEC_OPC_SET_TO_REGFILE,
1230 .spec_operand = {(BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
1231 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
1232 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
1233 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
1236 .field_bit_size = 8,
1237 .mask_opcode = BNXT_ULP_MASK_OPC_SET_TO_CONSTANT,
1238 .mask_operand = {0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
1239 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
1240 .spec_opcode = BNXT_ULP_SPEC_OPC_SET_TO_REGFILE,
1241 .spec_operand = {(BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
1242 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
1243 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
1244 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
1248 struct bnxt_ulp_mapper_result_field_info ulp_class_result_field_list[] = {
1250 .field_bit_size = 10,
1251 .result_opcode = BNXT_ULP_RESULT_OPC_SET_TO_REGFILE,
1252 .result_operand = {(BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
1253 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
1254 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
1255 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
1258 .field_bit_size = 7,
1259 .result_opcode = BNXT_ULP_RESULT_OPC_SET_TO_REGFILE,
1260 .result_operand = {(BNXT_ULP_REGFILE_INDEX_PROF_FUNC_ID_0 >> 8) & 0xff,
1261 BNXT_ULP_REGFILE_INDEX_PROF_FUNC_ID_0 & 0xff,
1262 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
1263 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
1266 .field_bit_size = 1,
1267 .result_opcode = BNXT_ULP_RESULT_OPC_SET_TO_CONSTANT,
1268 .result_operand = {0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
1269 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
1272 .field_bit_size = 4,
1273 .result_opcode = BNXT_ULP_RESULT_OPC_SET_TO_CONSTANT,
1274 .result_operand = {0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
1275 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
1278 .field_bit_size = 8,
1279 .result_opcode = BNXT_ULP_RESULT_OPC_SET_TO_CONSTANT,
1280 .result_operand = {0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
1281 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
1284 .field_bit_size = 3,
1285 .result_opcode = BNXT_ULP_RESULT_OPC_SET_TO_CONSTANT,
1286 .result_operand = {0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
1287 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
1290 .field_bit_size = 6,
1291 .result_opcode = BNXT_ULP_RESULT_OPC_SET_TO_CONSTANT,
1292 .result_operand = {0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
1293 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
1296 .field_bit_size = 3,
1297 .result_opcode = BNXT_ULP_RESULT_OPC_SET_TO_CONSTANT,
1298 .result_operand = {0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
1299 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
1302 .field_bit_size = 1,
1303 .result_opcode = BNXT_ULP_RESULT_OPC_SET_TO_CONSTANT,
1304 .result_operand = {0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
1305 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
1308 .field_bit_size = 16,
1309 .result_opcode = BNXT_ULP_RESULT_OPC_SET_TO_CONSTANT,
1310 .result_operand = {0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
1311 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
1314 .field_bit_size = 1,
1315 .result_opcode = BNXT_ULP_RESULT_OPC_SET_TO_CONSTANT,
1316 .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
1317 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
1320 .field_bit_size = 2,
1321 .result_opcode = BNXT_ULP_RESULT_OPC_SET_TO_CONSTANT,
1322 .result_operand = {0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
1323 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
1326 .field_bit_size = 2,
1327 .result_opcode = BNXT_ULP_RESULT_OPC_SET_TO_CONSTANT,
1328 .result_operand = {0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
1329 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
1332 .field_bit_size = 4,
1333 .result_opcode = BNXT_ULP_RESULT_OPC_SET_TO_CONSTANT,
1334 .result_operand = {0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
1335 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
1338 .field_bit_size = 8,
1339 .result_opcode = BNXT_ULP_RESULT_OPC_SET_TO_CONSTANT,
1340 .result_operand = {0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
1341 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
1344 .field_bit_size = 1,
1345 .result_opcode = BNXT_ULP_RESULT_OPC_SET_TO_CONSTANT,
1346 .result_operand = {0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
1347 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
1350 .field_bit_size = 10,
1351 .result_opcode = BNXT_ULP_RESULT_OPC_SET_TO_CONSTANT,
1352 .result_operand = {(0x00f9 >> 8) & 0xff,
1354 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
1355 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
1358 .field_bit_size = 5,
1359 .result_opcode = BNXT_ULP_RESULT_OPC_SET_TO_CONSTANT,
1360 .result_operand = {0x15, 0x00, 0x00, 0x00, 0x00, 0x00,
1361 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
1364 .field_bit_size = 8,
1365 .result_opcode = BNXT_ULP_RESULT_OPC_SET_TO_REGFILE,
1366 .result_operand = {(BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
1367 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
1368 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
1369 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
1372 .field_bit_size = 1,
1373 .result_opcode = BNXT_ULP_RESULT_OPC_SET_TO_CONSTANT,
1374 .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
1375 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
1378 .field_bit_size = 1,
1379 .result_opcode = BNXT_ULP_RESULT_OPC_SET_TO_CONSTANT,
1380 .result_operand = {0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
1381 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
1384 .field_bit_size = 33,
1385 .result_opcode = BNXT_ULP_RESULT_OPC_SET_TO_REGFILE,
1386 .result_operand = {(BNXT_ULP_REGFILE_INDEX_ACTION_PTR_MAIN >> 8) & 0xff,
1387 BNXT_ULP_REGFILE_INDEX_ACTION_PTR_MAIN & 0xff,
1388 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
1389 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
1392 .field_bit_size = 1,
1393 .result_opcode = BNXT_ULP_RESULT_OPC_SET_TO_CONSTANT,
1394 .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
1395 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
1398 .field_bit_size = 1,
1399 .result_opcode = BNXT_ULP_RESULT_OPC_SET_TO_CONSTANT,
1400 .result_operand = {0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
1401 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
1404 .field_bit_size = 5,
1405 .result_opcode = BNXT_ULP_RESULT_OPC_SET_TO_CONSTANT,
1406 .result_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,
1407 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
1410 .field_bit_size = 9,
1411 .result_opcode = BNXT_ULP_RESULT_OPC_SET_TO_CONSTANT,
1412 .result_operand = {(0x00c5 >> 8) & 0xff,
1414 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
1415 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
1418 .field_bit_size = 11,
1419 .result_opcode = BNXT_ULP_RESULT_OPC_SET_TO_CONSTANT,
1420 .result_operand = {0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
1421 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
1424 .field_bit_size = 2,
1425 .result_opcode = BNXT_ULP_RESULT_OPC_SET_TO_CONSTANT,
1426 .result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,
1427 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
1430 .field_bit_size = 1,
1431 .result_opcode = BNXT_ULP_RESULT_OPC_SET_TO_CONSTANT,
1432 .result_operand = {0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
1433 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
1436 .field_bit_size = 1,
1437 .result_opcode = BNXT_ULP_RESULT_OPC_SET_TO_CONSTANT,
1438 .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
1439 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
1443 struct bnxt_ulp_mapper_ident_info ulp_ident_list[] = {
1445 .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,
1446 .ident_type = TF_IDENT_TYPE_PROF_FUNC,
1447 .regfile_wr_idx = BNXT_ULP_REGFILE_INDEX_PROF_FUNC_ID_0,
1448 .ident_bit_size = 7,
1452 .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,
1453 .ident_type = TF_IDENT_TYPE_L2_CTXT,
1454 .regfile_wr_idx = BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0,
1455 .ident_bit_size = 10,
1459 .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,
1460 .ident_type = TF_IDENT_TYPE_EM_PROF,
1461 .regfile_wr_idx = BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0,
1462 .ident_bit_size = 8,
1467 struct bnxt_ulp_mapper_tbl_list_info ulp_act_tmpl_list[] = {
1468 [((0 << BNXT_ULP_LOG2_MAX_NUM_DEV) |
1469 BNXT_ULP_DEVICE_ID_WH_PLUS)] = {
1470 .device_name = BNXT_ULP_DEVICE_ID_WH_PLUS,
1476 struct bnxt_ulp_mapper_act_tbl_info ulp_act_tbl_list[] = {
1478 .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
1479 .table_type = TF_TBL_TYPE_EXT,
1480 .direction = TF_DIR_RX,
1481 .srch_b4_alloc = BNXT_ULP_SEARCH_BEFORE_ALLOC_NO,
1482 .result_start_idx = 0,
1483 .result_bit_size = 128,
1484 .result_num_fields = 26,
1485 .encap_num_fields = 0,
1486 .regfile_wr_idx = BNXT_ULP_REGFILE_INDEX_ACTION_PTR_MAIN
1490 struct bnxt_ulp_mapper_result_field_info ulp_act_result_field_list[] = {
1492 .field_bit_size = 14,
1493 .result_opcode = BNXT_ULP_RESULT_OPC_SET_TO_CONSTANT,
1494 .result_operand = {0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
1495 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
1498 .field_bit_size = 1,
1499 .result_opcode = BNXT_ULP_RESULT_OPC_SET_TO_CONSTANT,
1500 .result_operand = {0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
1501 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
1504 .field_bit_size = 1,
1505 .result_opcode = BNXT_ULP_RESULT_OPC_SET_TO_CONSTANT,
1506 .result_operand = {0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
1507 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
1510 .field_bit_size = 1,
1511 .result_opcode = BNXT_ULP_RESULT_OPC_SET_TO_CONSTANT,
1512 .result_operand = {0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
1513 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
1516 .field_bit_size = 1,
1517 .result_opcode = BNXT_ULP_RESULT_OPC_SET_TO_CONSTANT,
1518 .result_operand = {0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
1519 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
1522 .field_bit_size = 1,
1523 .result_opcode = BNXT_ULP_RESULT_OPC_SET_TO_CONSTANT,
1524 .result_operand = {0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
1525 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
1528 .field_bit_size = 8,
1529 .result_opcode = BNXT_ULP_RESULT_OPC_SET_TO_CONSTANT,
1530 .result_operand = {0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
1531 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
1534 .field_bit_size = 1,
1535 .result_opcode = BNXT_ULP_RESULT_OPC_SET_TO_CONSTANT,
1536 .result_operand = {0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
1537 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
1540 .field_bit_size = 1,
1541 .result_opcode = BNXT_ULP_RESULT_OPC_SET_TO_CONSTANT,
1542 .result_operand = {0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
1543 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
1546 .field_bit_size = 11,
1547 .result_opcode = BNXT_ULP_RESULT_OPC_SET_TO_CONSTANT,
1548 .result_operand = {0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
1549 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
1552 .field_bit_size = 1,
1553 .result_opcode = BNXT_ULP_RESULT_OPC_SET_TO_CONSTANT,
1554 .result_operand = {0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
1555 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
1558 .field_bit_size = 10,
1559 .result_opcode = BNXT_ULP_RESULT_OPC_SET_TO_CONSTANT,
1560 .result_operand = {0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
1561 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
1564 .field_bit_size = 16,
1565 .result_opcode = BNXT_ULP_RESULT_OPC_SET_TO_CONSTANT,
1566 .result_operand = {0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
1567 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
1570 .field_bit_size = 10,
1571 .result_opcode = BNXT_ULP_RESULT_OPC_SET_TO_CONSTANT,
1572 .result_operand = {0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
1573 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
1576 .field_bit_size = 16,
1577 .result_opcode = BNXT_ULP_RESULT_OPC_SET_TO_CONSTANT,
1578 .result_operand = {0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
1579 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
1582 .field_bit_size = 10,
1583 .result_opcode = BNXT_ULP_RESULT_OPC_SET_TO_CONSTANT,
1584 .result_operand = {0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
1585 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
1588 .field_bit_size = 1,
1589 .result_opcode = BNXT_ULP_RESULT_OPC_SET_TO_CONSTANT,
1590 .result_operand = {0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
1591 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
1594 .field_bit_size = 1,
1595 .result_opcode = BNXT_ULP_RESULT_OPC_SET_TO_CONSTANT,
1596 .result_operand = {0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
1597 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
1600 .field_bit_size = 1,
1601 .result_opcode = BNXT_ULP_RESULT_OPC_SET_TO_CONSTANT,
1602 .result_operand = {0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
1603 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
1606 .field_bit_size = 1,
1607 .result_opcode = BNXT_ULP_RESULT_OPC_SET_TO_CONSTANT,
1608 .result_operand = {0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
1609 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
1612 .field_bit_size = 4,
1613 .result_opcode = BNXT_ULP_RESULT_OPC_SET_TO_CONSTANT,
1614 .result_operand = {BNXT_ULP_SYM_DECAP_FUNC_NONE,
1615 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
1616 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
1619 .field_bit_size = 12,
1620 .result_opcode = BNXT_ULP_RESULT_OPC_SET_TO_ACT_PROP,
1621 .result_operand = {(BNXT_ULP_ACT_PROP_IDX_VNIC >> 8) & 0xff,
1622 BNXT_ULP_ACT_PROP_IDX_VNIC & 0xff,
1623 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
1624 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
1627 .field_bit_size = 1,
1628 .result_opcode = BNXT_ULP_RESULT_OPC_SET_TO_CONSTANT,
1629 .result_operand = {0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
1630 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
1633 .field_bit_size = 1,
1634 .result_opcode = BNXT_ULP_RESULT_OPC_SET_TO_CONSTANT,
1635 .result_operand = {0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
1636 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
1639 .field_bit_size = 2,
1640 .result_opcode = BNXT_ULP_RESULT_OPC_SET_TO_CONSTANT,
1641 .result_operand = {0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
1642 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
1645 .field_bit_size = 1,
1646 .result_opcode = BNXT_ULP_RESULT_OPC_SET_TO_CONSTANT,
1647 .result_operand = {0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
1648 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}