1 /* SPDX-License-Identifier: BSD-3-Clause
2 * Copyright(c) 2014-2021 Broadcom
6 /* date: Mon Nov 23 17:33:02 2020 */
8 #ifndef ULP_TEMPLATE_DB_H_
9 #define ULP_TEMPLATE_DB_H_
11 #define BNXT_ULP_REGFILE_MAX_SZ 31
12 #define BNXT_ULP_MAX_NUM_DEVICES 4
13 #define BNXT_ULP_LOG2_MAX_NUM_DEV 2
14 #define BNXT_ULP_GEN_TBL_MAX_SZ 6
15 #define BNXT_ULP_CLASS_SIG_TBL_MAX_SZ 256
16 #define BNXT_ULP_CLASS_MATCH_LIST_MAX_SZ 41
17 #define BNXT_ULP_CLASS_HID_LOW_PRIME 3793
18 #define BNXT_ULP_CLASS_HID_HIGH_PRIME 7919
19 #define BNXT_ULP_CLASS_HID_SHFTR 24
20 #define BNXT_ULP_CLASS_HID_SHFTL 23
21 #define BNXT_ULP_CLASS_HID_MASK 255
22 #define BNXT_ULP_ACT_SIG_TBL_MAX_SZ 2048
23 #define BNXT_ULP_ACT_MATCH_LIST_MAX_SZ 15
24 #define BNXT_ULP_ACT_HID_LOW_PRIME 7919
25 #define BNXT_ULP_ACT_HID_HIGH_PRIME 7919
26 #define BNXT_ULP_ACT_HID_SHFTR 24
27 #define BNXT_ULP_ACT_HID_SHFTL 23
28 #define BNXT_ULP_ACT_HID_MASK 2047
29 #define BNXT_ULP_GLB_RESOURCE_TBL_MAX_SZ 8
30 #define BNXT_ULP_GLB_TEMPLATE_TBL_MAX_SZ 1
31 #define BNXT_ULP_GLB_FIELD_TBL_SHIFT 7
32 #define BNXT_ULP_HDR_SIG_ID_SHIFT 4
33 #define BNXT_ULP_GLB_FIELD_TBL_SIZE 4441
34 #define ULP_WH_PLUS_CLASS_TMPL_LIST_SIZE 8
35 #define ULP_WH_PLUS_CLASS_TBL_LIST_SIZE 41
36 #define ULP_WH_PLUS_CLASS_KEY_INFO_LIST_SIZE 273
37 #define ULP_WH_PLUS_CLASS_IDENT_LIST_SIZE 14
38 #define ULP_WH_PLUS_CLASS_RESULT_FIELD_LIST_SIZE 385
39 #define ULP_WH_PLUS_CLASS_COND_LIST_SIZE 10
40 #define ULP_STINGRAY_CLASS_TMPL_LIST_SIZE 8
41 #define ULP_STINGRAY_CLASS_TBL_LIST_SIZE 41
42 #define ULP_STINGRAY_CLASS_KEY_INFO_LIST_SIZE 273
43 #define ULP_STINGRAY_CLASS_IDENT_LIST_SIZE 14
44 #define ULP_STINGRAY_CLASS_RESULT_FIELD_LIST_SIZE 385
45 #define ULP_STINGRAY_CLASS_COND_LIST_SIZE 10
46 #define ULP_WH_PLUS_ACT_TMPL_LIST_SIZE 2
47 #define ULP_WH_PLUS_ACT_TBL_LIST_SIZE 4
48 #define ULP_WH_PLUS_ACT_KEY_INFO_LIST_SIZE 0
49 #define ULP_WH_PLUS_ACT_IDENT_LIST_SIZE 0
50 #define ULP_WH_PLUS_ACT_RESULT_FIELD_LIST_SIZE 65
51 #define ULP_WH_PLUS_ACT_COND_LIST_SIZE 2
52 #define ULP_STINGRAY_ACT_TMPL_LIST_SIZE 2
53 #define ULP_STINGRAY_ACT_TBL_LIST_SIZE 4
54 #define ULP_STINGRAY_ACT_KEY_INFO_LIST_SIZE 0
55 #define ULP_STINGRAY_ACT_IDENT_LIST_SIZE 0
56 #define ULP_STINGRAY_ACT_RESULT_FIELD_LIST_SIZE 65
57 #define ULP_STINGRAY_ACT_COND_LIST_SIZE 2
59 enum bnxt_ulp_action_bit {
60 BNXT_ULP_ACTION_BIT_MARK = 0x0000000000000001,
61 BNXT_ULP_ACTION_BIT_DROP = 0x0000000000000002,
62 BNXT_ULP_ACTION_BIT_COUNT = 0x0000000000000004,
63 BNXT_ULP_ACTION_BIT_RSS = 0x0000000000000008,
64 BNXT_ULP_ACTION_BIT_METER = 0x0000000000000010,
65 BNXT_ULP_ACTION_BIT_VXLAN_DECAP = 0x0000000000000020,
66 BNXT_ULP_ACTION_BIT_POP_MPLS = 0x0000000000000040,
67 BNXT_ULP_ACTION_BIT_PUSH_MPLS = 0x0000000000000080,
68 BNXT_ULP_ACTION_BIT_MAC_SWAP = 0x0000000000000100,
69 BNXT_ULP_ACTION_BIT_SET_MAC_SRC = 0x0000000000000200,
70 BNXT_ULP_ACTION_BIT_SET_MAC_DST = 0x0000000000000400,
71 BNXT_ULP_ACTION_BIT_POP_VLAN = 0x0000000000000800,
72 BNXT_ULP_ACTION_BIT_PUSH_VLAN = 0x0000000000001000,
73 BNXT_ULP_ACTION_BIT_SET_VLAN_PCP = 0x0000000000002000,
74 BNXT_ULP_ACTION_BIT_SET_VLAN_VID = 0x0000000000004000,
75 BNXT_ULP_ACTION_BIT_SET_IPV4_SRC = 0x0000000000008000,
76 BNXT_ULP_ACTION_BIT_SET_IPV4_DST = 0x0000000000010000,
77 BNXT_ULP_ACTION_BIT_SET_IPV6_SRC = 0x0000000000020000,
78 BNXT_ULP_ACTION_BIT_SET_IPV6_DST = 0x0000000000040000,
79 BNXT_ULP_ACTION_BIT_DEC_TTL = 0x0000000000080000,
80 BNXT_ULP_ACTION_BIT_SET_TP_SRC = 0x0000000000100000,
81 BNXT_ULP_ACTION_BIT_SET_TP_DST = 0x0000000000200000,
82 BNXT_ULP_ACTION_BIT_VXLAN_ENCAP = 0x0000000000400000,
83 BNXT_ULP_ACTION_BIT_JUMP = 0x0000000000800000,
84 BNXT_ULP_ACTION_BIT_SHARED = 0x0000000001000000,
85 BNXT_ULP_ACTION_BIT_SAMPLE = 0x0000000002000000,
86 BNXT_ULP_ACTION_BIT_SHARED_SAMPLE = 0x0000000004000000,
87 BNXT_ULP_ACTION_BIT_LAST = 0x0000000008000000
90 enum bnxt_ulp_hdr_bit {
91 BNXT_ULP_HDR_BIT_O_ETH = 0x0000000000000001,
92 BNXT_ULP_HDR_BIT_OO_VLAN = 0x0000000000000002,
93 BNXT_ULP_HDR_BIT_OI_VLAN = 0x0000000000000004,
94 BNXT_ULP_HDR_BIT_O_IPV4 = 0x0000000000000008,
95 BNXT_ULP_HDR_BIT_O_IPV6 = 0x0000000000000010,
96 BNXT_ULP_HDR_BIT_O_TCP = 0x0000000000000020,
97 BNXT_ULP_HDR_BIT_O_UDP = 0x0000000000000040,
98 BNXT_ULP_HDR_BIT_T_VXLAN = 0x0000000000000080,
99 BNXT_ULP_HDR_BIT_T_GRE = 0x0000000000000100,
100 BNXT_ULP_HDR_BIT_I_ETH = 0x0000000000000200,
101 BNXT_ULP_HDR_BIT_IO_VLAN = 0x0000000000000400,
102 BNXT_ULP_HDR_BIT_II_VLAN = 0x0000000000000800,
103 BNXT_ULP_HDR_BIT_I_IPV4 = 0x0000000000001000,
104 BNXT_ULP_HDR_BIT_I_IPV6 = 0x0000000000002000,
105 BNXT_ULP_HDR_BIT_I_TCP = 0x0000000000004000,
106 BNXT_ULP_HDR_BIT_I_UDP = 0x0000000000008000,
107 BNXT_ULP_HDR_BIT_F1 = 0x0000000000010000,
108 BNXT_ULP_HDR_BIT_LAST = 0x0000000000020000
111 enum bnxt_ulp_accept_opc {
112 BNXT_ULP_ACCEPT_OPC_ALWAYS = 0,
113 BNXT_ULP_ACCEPT_OPC_FLOW_SIG_ID_MATCH = 1,
114 BNXT_ULP_ACCEPT_OPC_LAST = 2
117 enum bnxt_ulp_act_type {
118 BNXT_ULP_ACT_TYPE_NOT_SUPPORTED = 0,
119 BNXT_ULP_ACT_TYPE_SUPPORTED = 1,
120 BNXT_ULP_ACT_TYPE_END = 2,
121 BNXT_ULP_ACT_TYPE_LAST = 3
124 enum bnxt_ulp_byte_order {
125 BNXT_ULP_BYTE_ORDER_BE = 0,
126 BNXT_ULP_BYTE_ORDER_LE = 1,
127 BNXT_ULP_BYTE_ORDER_LAST = 2
130 enum bnxt_ulp_cf_idx {
131 BNXT_ULP_CF_IDX_NOT_USED = 0,
132 BNXT_ULP_CF_IDX_MPLS_TAG_NUM = 1,
133 BNXT_ULP_CF_IDX_O_VTAG_NUM = 2,
134 BNXT_ULP_CF_IDX_O_NO_VTAG = 3,
135 BNXT_ULP_CF_IDX_O_ONE_VTAG = 4,
136 BNXT_ULP_CF_IDX_O_TWO_VTAGS = 5,
137 BNXT_ULP_CF_IDX_I_VTAG_NUM = 6,
138 BNXT_ULP_CF_IDX_I_NO_VTAG = 7,
139 BNXT_ULP_CF_IDX_I_ONE_VTAG = 8,
140 BNXT_ULP_CF_IDX_I_TWO_VTAGS = 9,
141 BNXT_ULP_CF_IDX_INCOMING_IF = 10,
142 BNXT_ULP_CF_IDX_DIRECTION = 11,
143 BNXT_ULP_CF_IDX_SVIF_FLAG = 12,
144 BNXT_ULP_CF_IDX_O_L3 = 13,
145 BNXT_ULP_CF_IDX_I_L3 = 14,
146 BNXT_ULP_CF_IDX_O_L4 = 15,
147 BNXT_ULP_CF_IDX_I_L4 = 16,
148 BNXT_ULP_CF_IDX_DEV_PORT_ID = 17,
149 BNXT_ULP_CF_IDX_DRV_FUNC_SVIF = 18,
150 BNXT_ULP_CF_IDX_DRV_FUNC_SPIF = 19,
151 BNXT_ULP_CF_IDX_DRV_FUNC_PARIF = 20,
152 BNXT_ULP_CF_IDX_DRV_FUNC_VNIC = 21,
153 BNXT_ULP_CF_IDX_DRV_FUNC_PHY_PORT = 22,
154 BNXT_ULP_CF_IDX_VF_FUNC_SVIF = 23,
155 BNXT_ULP_CF_IDX_VF_FUNC_SPIF = 24,
156 BNXT_ULP_CF_IDX_VF_FUNC_PARIF = 25,
157 BNXT_ULP_CF_IDX_VF_FUNC_VNIC = 26,
158 BNXT_ULP_CF_IDX_PHY_PORT_SVIF = 27,
159 BNXT_ULP_CF_IDX_PHY_PORT_SPIF = 28,
160 BNXT_ULP_CF_IDX_PHY_PORT_PARIF = 29,
161 BNXT_ULP_CF_IDX_PHY_PORT_VPORT = 30,
162 BNXT_ULP_CF_IDX_ACT_ENCAP_IPV4_FLAG = 31,
163 BNXT_ULP_CF_IDX_ACT_ENCAP_IPV6_FLAG = 32,
164 BNXT_ULP_CF_IDX_ACT_DEC_TTL = 33,
165 BNXT_ULP_CF_IDX_ACT_T_DEC_TTL = 34,
166 BNXT_ULP_CF_IDX_ACT_PORT_IS_SET = 35,
167 BNXT_ULP_CF_IDX_ACT_PORT_TYPE = 36,
168 BNXT_ULP_CF_IDX_MATCH_PORT_TYPE = 37,
169 BNXT_ULP_CF_IDX_MATCH_PORT_IS_VFREP = 38,
170 BNXT_ULP_CF_IDX_VF_TO_VF = 39,
171 BNXT_ULP_CF_IDX_L3_HDR_CNT = 40,
172 BNXT_ULP_CF_IDX_L4_HDR_CNT = 41,
173 BNXT_ULP_CF_IDX_VFR_MODE = 42,
174 BNXT_ULP_CF_IDX_L3_TUN = 43,
175 BNXT_ULP_CF_IDX_L3_TUN_DECAP = 44,
176 BNXT_ULP_CF_IDX_FID = 45,
177 BNXT_ULP_CF_IDX_HDR_SIG_ID = 46,
178 BNXT_ULP_CF_IDX_FLOW_SIG_ID = 47,
179 BNXT_ULP_CF_IDX_LAST = 48
182 enum bnxt_ulp_cond_list_opc {
183 BNXT_ULP_COND_LIST_OPC_TRUE = 0,
184 BNXT_ULP_COND_LIST_OPC_FALSE = 1,
185 BNXT_ULP_COND_LIST_OPC_OR = 2,
186 BNXT_ULP_COND_LIST_OPC_AND = 3,
187 BNXT_ULP_COND_LIST_OPC_LAST = 4
190 enum bnxt_ulp_cond_opc {
191 BNXT_ULP_COND_OPC_COMP_FIELD_IS_SET = 0,
192 BNXT_ULP_COND_OPC_COMP_FIELD_NOT_SET = 1,
193 BNXT_ULP_COND_OPC_ACTION_BIT_IS_SET = 2,
194 BNXT_ULP_COND_OPC_ACTION_BIT_NOT_SET = 3,
195 BNXT_ULP_COND_OPC_HDR_BIT_IS_SET = 4,
196 BNXT_ULP_COND_OPC_HDR_BIT_NOT_SET = 5,
197 BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET = 6,
198 BNXT_ULP_COND_OPC_FIELD_BIT_NOT_SET = 7,
199 BNXT_ULP_COND_OPC_REGFILE_IS_SET = 8,
200 BNXT_ULP_COND_OPC_REGFILE_NOT_SET = 9,
201 BNXT_ULP_COND_OPC_LAST = 10
204 enum bnxt_ulp_critical_resource {
205 BNXT_ULP_CRITICAL_RESOURCE_NO = 0,
206 BNXT_ULP_CRITICAL_RESOURCE_YES = 1,
207 BNXT_ULP_CRITICAL_RESOURCE_LAST = 2
210 enum bnxt_ulp_device_id {
211 BNXT_ULP_DEVICE_ID_WH_PLUS = 0,
212 BNXT_ULP_DEVICE_ID_THOR = 1,
213 BNXT_ULP_DEVICE_ID_STINGRAY = 2,
214 BNXT_ULP_DEVICE_ID_STINGRAY2 = 3,
215 BNXT_ULP_DEVICE_ID_LAST = 4
218 enum bnxt_ulp_df_param_type {
219 BNXT_ULP_DF_PARAM_TYPE_DEV_PORT_ID = 0,
220 BNXT_ULP_DF_PARAM_TYPE_LAST = 1
223 enum bnxt_ulp_direction {
224 BNXT_ULP_DIRECTION_INGRESS = 0,
225 BNXT_ULP_DIRECTION_EGRESS = 1,
226 BNXT_ULP_DIRECTION_LAST = 2
229 enum bnxt_ulp_fdb_opc {
230 BNXT_ULP_FDB_OPC_PUSH = 0,
231 BNXT_ULP_FDB_OPC_ALLOC_PUSH_REGFILE = 1,
232 BNXT_ULP_FDB_OPC_PUSH_REGFILE = 2,
233 BNXT_ULP_FDB_OPC_NOP = 3,
234 BNXT_ULP_FDB_OPC_LAST = 4
237 enum bnxt_ulp_fdb_type {
238 BNXT_ULP_FDB_TYPE_REGULAR = 0,
239 BNXT_ULP_FDB_TYPE_DEFAULT = 1,
240 BNXT_ULP_FDB_TYPE_RID = 2,
241 BNXT_ULP_FDB_TYPE_LAST = 3
244 enum bnxt_ulp_field_opc {
245 BNXT_ULP_FIELD_OPC_SET_TO_CONSTANT = 0,
246 BNXT_ULP_FIELD_OPC_SET_TO_HDR_FIELD = 1,
247 BNXT_ULP_FIELD_OPC_SET_TO_COMP_FIELD = 2,
248 BNXT_ULP_FIELD_OPC_SET_TO_REGFILE = 3,
249 BNXT_ULP_FIELD_OPC_SET_TO_GLB_REGFILE = 4,
250 BNXT_ULP_FIELD_OPC_SET_TO_ZERO = 5,
251 BNXT_ULP_FIELD_OPC_SET_TO_ACT_BIT = 6,
252 BNXT_ULP_FIELD_OPC_SET_TO_ACT_PROP = 7,
253 BNXT_ULP_FIELD_OPC_SET_TO_ENCAP_ACT_PROP_SZ = 8,
254 BNXT_ULP_FIELD_OPC_IF_ACT_BIT_THEN_ACT_PROP_ELSE_CONST = 9,
255 BNXT_ULP_FIELD_OPC_IF_ACT_BIT_THEN_CONST_ELSE_CONST = 10,
256 BNXT_ULP_FIELD_OPC_IF_COMP_FIELD_THEN_CF_ELSE_CF = 11,
257 BNXT_ULP_FIELD_OPC_IF_HDR_BIT_THEN_CONST_ELSE_CONST = 12,
258 BNXT_ULP_FIELD_OPC_IF_COMP_FIELD_THEN_ACT_PROP_ELSE_CONST = 13,
259 BNXT_ULP_FIELD_OPC_IF_NOT_COMP_FIELD_THEN_ACT_PROP_ELSE_CONST = 14,
260 BNXT_ULP_FIELD_OPC_IF_COMP_FIELD_THEN_CONST_ELSE_CF = 15,
261 BNXT_ULP_FIELD_OPC_IF_NOT_COMP_FIELD_THEN_CONST_ELSE_CF = 16,
262 BNXT_ULP_FIELD_OPC_IF_FIELD_BIT_THEN_ONES_ELSE_ZERO = 17,
263 BNXT_ULP_FIELD_OPC_LAST = 18
266 enum bnxt_ulp_generic_tbl_opc {
267 BNXT_ULP_GENERIC_TBL_OPC_NOT_USED = 0,
268 BNXT_ULP_GENERIC_TBL_OPC_READ = 1,
269 BNXT_ULP_GENERIC_TBL_OPC_WRITE = 2,
270 BNXT_ULP_GENERIC_TBL_OPC_LAST = 3
273 enum bnxt_ulp_glb_rf_idx {
274 BNXT_ULP_GLB_RF_IDX_NOT_USED = 0,
275 BNXT_ULP_GLB_RF_IDX_GLB_PROF_FUNC_ID = 1,
276 BNXT_ULP_GLB_RF_IDX_GLB_LB_AREC_PTR = 2,
277 BNXT_ULP_GLB_RF_IDX_L2_PROF_FUNC_ID = 3,
278 BNXT_ULP_GLB_RF_IDX_VXLAN_PROF_FUNC_ID = 4,
279 BNXT_ULP_GLB_RF_IDX_ENCAP_MAC_PTR = 5,
280 BNXT_ULP_GLB_RF_IDX_LAST = 6
283 enum bnxt_ulp_hdr_type {
284 BNXT_ULP_HDR_TYPE_NOT_SUPPORTED = 0,
285 BNXT_ULP_HDR_TYPE_SUPPORTED = 1,
286 BNXT_ULP_HDR_TYPE_END = 2,
287 BNXT_ULP_HDR_TYPE_LAST = 3
290 enum bnxt_ulp_if_tbl_opc {
291 BNXT_ULP_IF_TBL_OPC_NOT_USED = 0,
292 BNXT_ULP_IF_TBL_OPC_WR_COMP_FIELD = 1,
293 BNXT_ULP_IF_TBL_OPC_WR_REGFILE = 2,
294 BNXT_ULP_IF_TBL_OPC_WR_CONST = 3,
295 BNXT_ULP_IF_TBL_OPC_RD_COMP_FIELD = 4,
296 BNXT_ULP_IF_TBL_OPC_LAST = 5
299 enum bnxt_ulp_index_tbl_opc {
300 BNXT_ULP_INDEX_TBL_OPC_NOT_USED = 0,
301 BNXT_ULP_INDEX_TBL_OPC_ALLOC_REGFILE = 1,
302 BNXT_ULP_INDEX_TBL_OPC_ALLOC_WR_REGFILE = 2,
303 BNXT_ULP_INDEX_TBL_OPC_SRCH_ALLOC_WR_REGFILE = 3,
304 BNXT_ULP_INDEX_TBL_OPC_WR_GLB_REGFILE = 4,
305 BNXT_ULP_INDEX_TBL_OPC_WR_REGFILE = 5,
306 BNXT_ULP_INDEX_TBL_OPC_RD_REGFILE = 6,
307 BNXT_ULP_INDEX_TBL_OPC_LAST = 7
310 enum bnxt_ulp_mark_db_opc {
311 BNXT_ULP_MARK_DB_OPC_NOP = 0,
312 BNXT_ULP_MARK_DB_OPC_PUSH_IF_MARK_ACTION = 1,
313 BNXT_ULP_MARK_DB_OPC_PUSH_AND_SET_VFR_FLAG = 2,
314 BNXT_ULP_MARK_DB_OPC_LAST = 3
317 enum bnxt_ulp_match_type {
318 BNXT_ULP_MATCH_TYPE_EM = 0,
319 BNXT_ULP_MATCH_TYPE_WM = 1,
320 BNXT_ULP_MATCH_TYPE_LAST = 2
323 enum bnxt_ulp_mem_type_opc {
324 BNXT_ULP_MEM_TYPE_OPC_NOP = 0,
325 BNXT_ULP_MEM_TYPE_OPC_EXECUTE_IF_INT = 1,
326 BNXT_ULP_MEM_TYPE_OPC_EXECUTE_IF_EXT = 2,
327 BNXT_ULP_MEM_TYPE_OPC_LAST = 3
330 enum bnxt_ulp_pri_opc {
331 BNXT_ULP_PRI_OPC_NOT_USED = 0,
332 BNXT_ULP_PRI_OPC_CONST = 1,
333 BNXT_ULP_PRI_OPC_APP_PRI = 2,
334 BNXT_ULP_PRI_OPC_LAST = 3
337 enum bnxt_ulp_rf_idx {
338 BNXT_ULP_RF_IDX_NOT_USED = 0,
339 BNXT_ULP_RF_IDX_L2_CNTXT_ID_0 = 1,
340 BNXT_ULP_RF_IDX_L2_CNTXT_ID_1 = 2,
341 BNXT_ULP_RF_IDX_PROF_FUNC_ID_0 = 3,
342 BNXT_ULP_RF_IDX_PROF_FUNC_ID_1 = 4,
343 BNXT_ULP_RF_IDX_EM_PROFILE_ID_0 = 5,
344 BNXT_ULP_RF_IDX_EM_PROFILE_ID_1 = 6,
345 BNXT_ULP_RF_IDX_WC_PROFILE_ID_0 = 7,
346 BNXT_ULP_RF_IDX_WC_PROFILE_ID_1 = 8,
347 BNXT_ULP_RF_IDX_MAIN_ACTION_PTR = 9,
348 BNXT_ULP_RF_IDX_ACTION_PTR_0 = 10,
349 BNXT_ULP_RF_IDX_ENCAP_PTR_0 = 11,
350 BNXT_ULP_RF_IDX_ENCAP_PTR_1 = 12,
351 BNXT_ULP_RF_IDX_CRITICAL_RESOURCE = 13,
352 BNXT_ULP_RF_IDX_FLOW_CNTR_PTR_0 = 14,
353 BNXT_ULP_RF_IDX_MAIN_SP_PTR = 15,
354 BNXT_ULP_RF_IDX_MODIFY_IPV4_SRC_PTR_0 = 16,
355 BNXT_ULP_RF_IDX_MODIFY_IPV4_DST_PTR_0 = 17,
356 BNXT_ULP_RF_IDX_ACTION_REC_SIZE = 18,
357 BNXT_ULP_RF_IDX_L2_CNTXT_TCAM_INDEX_0 = 19,
358 BNXT_ULP_RF_IDX_L2_CNTXT_TCAM_INDEX_1 = 20,
359 BNXT_ULP_RF_IDX_PROFILE_TCAM_INDEX_0 = 21,
360 BNXT_ULP_RF_IDX_PROFILE_TCAM_INDEX_1 = 22,
361 BNXT_ULP_RF_IDX_WC_TCAM_INDEX_0 = 23,
362 BNXT_ULP_RF_IDX_WC_TCAM_INDEX_1 = 24,
363 BNXT_ULP_RF_IDX_SRC_PROPERTY_PTR = 25,
364 BNXT_ULP_RF_IDX_GENERIC_TBL_HIT = 26,
365 BNXT_ULP_RF_IDX_MIRROR_PTR_0 = 27,
366 BNXT_ULP_RF_IDX_HDR_SIG_ID = 28,
367 BNXT_ULP_RF_IDX_FLOW_SIG_ID = 29,
368 BNXT_ULP_RF_IDX_RID = 30,
369 BNXT_ULP_RF_IDX_LAST = 31
372 enum bnxt_ulp_tcam_tbl_opc {
373 BNXT_ULP_TCAM_TBL_OPC_NOT_USED = 0,
374 BNXT_ULP_TCAM_TBL_OPC_ALLOC_WR_REGFILE = 1,
375 BNXT_ULP_TCAM_TBL_OPC_SRCH_ALLOC_WR_REGFILE = 2,
376 BNXT_ULP_TCAM_TBL_OPC_LAST = 3
379 enum bnxt_ulp_template_type {
380 BNXT_ULP_TEMPLATE_TYPE_CLASS = 0,
381 BNXT_ULP_TEMPLATE_TYPE_ACTION = 1,
382 BNXT_ULP_TEMPLATE_TYPE_LAST = 2
385 enum bnxt_ulp_fdb_resource_flags {
386 BNXT_ULP_FDB_RESOURCE_FLAGS_DIR_INGR = 0x00,
387 BNXT_ULP_FDB_RESOURCE_FLAGS_DIR_EGR = 0x01
390 enum bnxt_ulp_flow_dir_bitmask {
391 BNXT_ULP_FLOW_DIR_BITMASK_ING = 0x0000000000000000,
392 BNXT_ULP_FLOW_DIR_BITMASK_EGR = 0x8000000000000000
395 enum bnxt_ulp_match_type_bitmask {
396 BNXT_ULP_MATCH_TYPE_BITMASK_EM = 0x0000000000000000,
397 BNXT_ULP_MATCH_TYPE_BITMASK_WM = 0x8000000000000000
400 enum bnxt_ulp_resource_func {
401 BNXT_ULP_RESOURCE_FUNC_INVALID = 0x00,
402 BNXT_ULP_RESOURCE_FUNC_EXT_EM_TABLE = 0x20,
403 BNXT_ULP_RESOURCE_FUNC_INT_EM_TABLE = 0x40,
404 BNXT_ULP_RESOURCE_FUNC_RSVD2 = 0x60,
405 BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE = 0x80,
406 BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE = 0x81,
407 BNXT_ULP_RESOURCE_FUNC_GENERIC_TABLE = 0x82,
408 BNXT_ULP_RESOURCE_FUNC_IDENTIFIER = 0x83,
409 BNXT_ULP_RESOURCE_FUNC_IF_TABLE = 0x84,
410 BNXT_ULP_RESOURCE_FUNC_HW_FID = 0x85,
411 BNXT_ULP_RESOURCE_FUNC_PARENT_FLOW = 0x86,
412 BNXT_ULP_RESOURCE_FUNC_CHILD_FLOW = 0x87
415 enum bnxt_ulp_resource_sub_type {
416 BNXT_ULP_RESOURCE_SUB_TYPE_NOT_USED = 0,
417 BNXT_ULP_RESOURCE_SUB_TYPE_INDEX_TABLE_NORMAL = 0,
418 BNXT_ULP_RESOURCE_SUB_TYPE_INDEX_TABLE_VFR_CFA_ACTION = 1,
419 BNXT_ULP_RESOURCE_SUB_TYPE_INDEX_TABLE_INT_COUNT = 2,
420 BNXT_ULP_RESOURCE_SUB_TYPE_INDEX_TABLE_INT_COUNT_ACC = 3,
421 BNXT_ULP_RESOURCE_SUB_TYPE_INDEX_TABLE_EXT_COUNT = 4,
422 BNXT_ULP_RESOURCE_SUB_TYPE_GENERIC_TABLE_L2_CNTXT_TCAM = 0,
423 BNXT_ULP_RESOURCE_SUB_TYPE_GENERIC_TABLE_PROFILE_TCAM = 1,
424 BNXT_ULP_RESOURCE_SUB_TYPE_GENERIC_TABLE_MIRROR_TBL = 2
427 enum bnxt_ulp_act_prop_sz {
428 BNXT_ULP_ACT_PROP_SZ_ENCAP_TUN_SZ = 4,
429 BNXT_ULP_ACT_PROP_SZ_ENCAP_IP_SZ = 4,
430 BNXT_ULP_ACT_PROP_SZ_ENCAP_VTAG_SZ = 4,
431 BNXT_ULP_ACT_PROP_SZ_ENCAP_VTAG_TYPE = 4,
432 BNXT_ULP_ACT_PROP_SZ_ENCAP_VTAG_NUM = 4,
433 BNXT_ULP_ACT_PROP_SZ_ENCAP_L3_TYPE = 4,
434 BNXT_ULP_ACT_PROP_SZ_MPLS_POP_NUM = 4,
435 BNXT_ULP_ACT_PROP_SZ_MPLS_PUSH_NUM = 4,
436 BNXT_ULP_ACT_PROP_SZ_PORT_ID = 4,
437 BNXT_ULP_ACT_PROP_SZ_VNIC = 4,
438 BNXT_ULP_ACT_PROP_SZ_VPORT = 4,
439 BNXT_ULP_ACT_PROP_SZ_MARK = 4,
440 BNXT_ULP_ACT_PROP_SZ_COUNT = 4,
441 BNXT_ULP_ACT_PROP_SZ_METER = 4,
442 BNXT_ULP_ACT_PROP_SZ_SET_MAC_SRC = 8,
443 BNXT_ULP_ACT_PROP_SZ_SET_MAC_DST = 8,
444 BNXT_ULP_ACT_PROP_SZ_PUSH_VLAN = 2,
445 BNXT_ULP_ACT_PROP_SZ_SET_VLAN_PCP = 1,
446 BNXT_ULP_ACT_PROP_SZ_SET_VLAN_VID = 2,
447 BNXT_ULP_ACT_PROP_SZ_SET_IPV4_SRC = 4,
448 BNXT_ULP_ACT_PROP_SZ_SET_IPV4_DST = 4,
449 BNXT_ULP_ACT_PROP_SZ_SET_IPV6_SRC = 16,
450 BNXT_ULP_ACT_PROP_SZ_SET_IPV6_DST = 16,
451 BNXT_ULP_ACT_PROP_SZ_SET_TP_SRC = 2,
452 BNXT_ULP_ACT_PROP_SZ_SET_TP_DST = 2,
453 BNXT_ULP_ACT_PROP_SZ_OF_PUSH_MPLS_0 = 4,
454 BNXT_ULP_ACT_PROP_SZ_OF_PUSH_MPLS_1 = 4,
455 BNXT_ULP_ACT_PROP_SZ_OF_PUSH_MPLS_2 = 4,
456 BNXT_ULP_ACT_PROP_SZ_OF_PUSH_MPLS_3 = 4,
457 BNXT_ULP_ACT_PROP_SZ_OF_PUSH_MPLS_4 = 4,
458 BNXT_ULP_ACT_PROP_SZ_OF_PUSH_MPLS_5 = 4,
459 BNXT_ULP_ACT_PROP_SZ_OF_PUSH_MPLS_6 = 4,
460 BNXT_ULP_ACT_PROP_SZ_OF_PUSH_MPLS_7 = 4,
461 BNXT_ULP_ACT_PROP_SZ_ENCAP_L2_DMAC = 6,
462 BNXT_ULP_ACT_PROP_SZ_ENCAP_L2_SMAC = 6,
463 BNXT_ULP_ACT_PROP_SZ_ENCAP_VTAG = 8,
464 BNXT_ULP_ACT_PROP_SZ_ENCAP_IP = 32,
465 BNXT_ULP_ACT_PROP_SZ_ENCAP_IP_SRC = 16,
466 BNXT_ULP_ACT_PROP_SZ_ENCAP_UDP = 4,
467 BNXT_ULP_ACT_PROP_SZ_ENCAP_TUN = 32,
468 BNXT_ULP_ACT_PROP_SZ_JUMP = 4,
469 BNXT_ULP_ACT_PROP_SZ_SHARED_HANDLE = 8,
470 BNXT_ULP_ACT_PROP_SZ_LAST = 4
473 enum bnxt_ulp_act_prop_idx {
474 BNXT_ULP_ACT_PROP_IDX_ENCAP_TUN_SZ = 0,
475 BNXT_ULP_ACT_PROP_IDX_ENCAP_IP_SZ = 4,
476 BNXT_ULP_ACT_PROP_IDX_ENCAP_VTAG_SZ = 8,
477 BNXT_ULP_ACT_PROP_IDX_ENCAP_VTAG_TYPE = 12,
478 BNXT_ULP_ACT_PROP_IDX_ENCAP_VTAG_NUM = 16,
479 BNXT_ULP_ACT_PROP_IDX_ENCAP_L3_TYPE = 20,
480 BNXT_ULP_ACT_PROP_IDX_MPLS_POP_NUM = 24,
481 BNXT_ULP_ACT_PROP_IDX_MPLS_PUSH_NUM = 28,
482 BNXT_ULP_ACT_PROP_IDX_PORT_ID = 32,
483 BNXT_ULP_ACT_PROP_IDX_VNIC = 36,
484 BNXT_ULP_ACT_PROP_IDX_VPORT = 40,
485 BNXT_ULP_ACT_PROP_IDX_MARK = 44,
486 BNXT_ULP_ACT_PROP_IDX_COUNT = 48,
487 BNXT_ULP_ACT_PROP_IDX_METER = 52,
488 BNXT_ULP_ACT_PROP_IDX_SET_MAC_SRC = 56,
489 BNXT_ULP_ACT_PROP_IDX_SET_MAC_DST = 64,
490 BNXT_ULP_ACT_PROP_IDX_PUSH_VLAN = 72,
491 BNXT_ULP_ACT_PROP_IDX_SET_VLAN_PCP = 74,
492 BNXT_ULP_ACT_PROP_IDX_SET_VLAN_VID = 75,
493 BNXT_ULP_ACT_PROP_IDX_SET_IPV4_SRC = 77,
494 BNXT_ULP_ACT_PROP_IDX_SET_IPV4_DST = 81,
495 BNXT_ULP_ACT_PROP_IDX_SET_IPV6_SRC = 85,
496 BNXT_ULP_ACT_PROP_IDX_SET_IPV6_DST = 101,
497 BNXT_ULP_ACT_PROP_IDX_SET_TP_SRC = 117,
498 BNXT_ULP_ACT_PROP_IDX_SET_TP_DST = 119,
499 BNXT_ULP_ACT_PROP_IDX_OF_PUSH_MPLS_0 = 121,
500 BNXT_ULP_ACT_PROP_IDX_OF_PUSH_MPLS_1 = 125,
501 BNXT_ULP_ACT_PROP_IDX_OF_PUSH_MPLS_2 = 129,
502 BNXT_ULP_ACT_PROP_IDX_OF_PUSH_MPLS_3 = 133,
503 BNXT_ULP_ACT_PROP_IDX_OF_PUSH_MPLS_4 = 137,
504 BNXT_ULP_ACT_PROP_IDX_OF_PUSH_MPLS_5 = 141,
505 BNXT_ULP_ACT_PROP_IDX_OF_PUSH_MPLS_6 = 145,
506 BNXT_ULP_ACT_PROP_IDX_OF_PUSH_MPLS_7 = 149,
507 BNXT_ULP_ACT_PROP_IDX_ENCAP_L2_DMAC = 153,
508 BNXT_ULP_ACT_PROP_IDX_ENCAP_L2_SMAC = 159,
509 BNXT_ULP_ACT_PROP_IDX_ENCAP_VTAG = 165,
510 BNXT_ULP_ACT_PROP_IDX_ENCAP_IP = 173,
511 BNXT_ULP_ACT_PROP_IDX_ENCAP_IP_SRC = 205,
512 BNXT_ULP_ACT_PROP_IDX_ENCAP_UDP = 221,
513 BNXT_ULP_ACT_PROP_IDX_ENCAP_TUN = 225,
514 BNXT_ULP_ACT_PROP_IDX_JUMP = 257,
515 BNXT_ULP_ACT_PROP_IDX_SHARED_HANDLE = 261,
516 BNXT_ULP_ACT_PROP_IDX_LAST = 269
519 enum bnxt_ulp_wh_plus_sym {
520 BNXT_ULP_WH_PLUS_SYM_PKT_TYPE_IGNORE = 0,
521 BNXT_ULP_WH_PLUS_SYM_PKT_TYPE_L2 = 0,
522 BNXT_ULP_WH_PLUS_SYM_PKT_TYPE_0_IGNORE = 0,
523 BNXT_ULP_WH_PLUS_SYM_PKT_TYPE_0_L2 = 0,
524 BNXT_ULP_WH_PLUS_SYM_PKT_TYPE_1_IGNORE = 0,
525 BNXT_ULP_WH_PLUS_SYM_PKT_TYPE_1_L2 = 0,
526 BNXT_ULP_WH_PLUS_SYM_RECYCLE_CNT_IGNORE = 0,
527 BNXT_ULP_WH_PLUS_SYM_RECYCLE_CNT_ZERO = 0,
528 BNXT_ULP_WH_PLUS_SYM_RECYCLE_CNT_ONE = 1,
529 BNXT_ULP_WH_PLUS_SYM_RECYCLE_CNT_TWO = 2,
530 BNXT_ULP_WH_PLUS_SYM_RECYCLE_CNT_THREE = 3,
531 BNXT_ULP_WH_PLUS_SYM_AGG_ERROR_IGNORE = 0,
532 BNXT_ULP_WH_PLUS_SYM_AGG_ERROR_NO = 0,
533 BNXT_ULP_WH_PLUS_SYM_AGG_ERROR_YES = 1,
534 BNXT_ULP_WH_PLUS_SYM_RESERVED_IGNORE = 0,
535 BNXT_ULP_WH_PLUS_SYM_HREC_NEXT_IGNORE = 0,
536 BNXT_ULP_WH_PLUS_SYM_HREC_NEXT_NO = 0,
537 BNXT_ULP_WH_PLUS_SYM_HREC_NEXT_YES = 1,
538 BNXT_ULP_WH_PLUS_SYM_TL2_HDR_VALID_IGNORE = 0,
539 BNXT_ULP_WH_PLUS_SYM_TL2_HDR_VALID_NO = 0,
540 BNXT_ULP_WH_PLUS_SYM_TL2_HDR_VALID_YES = 1,
541 BNXT_ULP_WH_PLUS_SYM_TL2_HDR_TYPE_IGNORE = 0,
542 BNXT_ULP_WH_PLUS_SYM_TL2_HDR_TYPE_DIX = 0,
543 BNXT_ULP_WH_PLUS_SYM_TL2_UC_MC_BC_IGNORE = 0,
544 BNXT_ULP_WH_PLUS_SYM_TL2_UC_MC_BC_UC = 0,
545 BNXT_ULP_WH_PLUS_SYM_TL2_UC_MC_BC_MC = 2,
546 BNXT_ULP_WH_PLUS_SYM_TL2_UC_MC_BC_BC = 3,
547 BNXT_ULP_WH_PLUS_SYM_TL2_VTAG_PRESENT_IGNORE = 0,
548 BNXT_ULP_WH_PLUS_SYM_TL2_VTAG_PRESENT_NO = 0,
549 BNXT_ULP_WH_PLUS_SYM_TL2_VTAG_PRESENT_YES = 1,
550 BNXT_ULP_WH_PLUS_SYM_TL2_TWO_VTAGS_IGNORE = 0,
551 BNXT_ULP_WH_PLUS_SYM_TL2_TWO_VTAGS_NO = 0,
552 BNXT_ULP_WH_PLUS_SYM_TL2_TWO_VTAGS_YES = 1,
553 BNXT_ULP_WH_PLUS_SYM_TL3_HDR_VALID_IGNORE = 0,
554 BNXT_ULP_WH_PLUS_SYM_TL3_HDR_VALID_NO = 0,
555 BNXT_ULP_WH_PLUS_SYM_TL3_HDR_VALID_YES = 1,
556 BNXT_ULP_WH_PLUS_SYM_TL3_HDR_ERROR_IGNORE = 0,
557 BNXT_ULP_WH_PLUS_SYM_TL3_HDR_ERROR_NO = 0,
558 BNXT_ULP_WH_PLUS_SYM_TL3_HDR_ERROR_YES = 1,
559 BNXT_ULP_WH_PLUS_SYM_TL3_HDR_TYPE_IGNORE = 0,
560 BNXT_ULP_WH_PLUS_SYM_TL3_HDR_TYPE_IPV4 = 0,
561 BNXT_ULP_WH_PLUS_SYM_TL3_HDR_TYPE_IPV6 = 1,
562 BNXT_ULP_WH_PLUS_SYM_TL3_HDR_ISIP_IGNORE = 0,
563 BNXT_ULP_WH_PLUS_SYM_TL3_HDR_ISIP_NO = 0,
564 BNXT_ULP_WH_PLUS_SYM_TL3_HDR_ISIP_YES = 1,
565 BNXT_ULP_WH_PLUS_SYM_TL3_IPV6_CMP_SRC_IGNORE = 0,
566 BNXT_ULP_WH_PLUS_SYM_TL3_IPV6_CMP_SRC_NO = 0,
567 BNXT_ULP_WH_PLUS_SYM_TL3_IPV6_CMP_SRC_YES = 1,
568 BNXT_ULP_WH_PLUS_SYM_TL3_IPV6_CMP_DST_IGNORE = 0,
569 BNXT_ULP_WH_PLUS_SYM_TL3_IPV6_CMP_DST_NO = 0,
570 BNXT_ULP_WH_PLUS_SYM_TL3_IPV6_CMP_DST_YES = 1,
571 BNXT_ULP_WH_PLUS_SYM_TL4_HDR_VALID_IGNORE = 0,
572 BNXT_ULP_WH_PLUS_SYM_TL4_HDR_VALID_NO = 0,
573 BNXT_ULP_WH_PLUS_SYM_TL4_HDR_VALID_YES = 1,
574 BNXT_ULP_WH_PLUS_SYM_TL4_HDR_ERROR_IGNORE = 0,
575 BNXT_ULP_WH_PLUS_SYM_TL4_HDR_ERROR_NO = 0,
576 BNXT_ULP_WH_PLUS_SYM_TL4_HDR_ERROR_YES = 1,
577 BNXT_ULP_WH_PLUS_SYM_TL4_HDR_IS_UDP_TCP_IGNORE = 0,
578 BNXT_ULP_WH_PLUS_SYM_TL4_HDR_IS_UDP_TCP_NO = 0,
579 BNXT_ULP_WH_PLUS_SYM_TL4_HDR_IS_UDP_TCP_YES = 1,
580 BNXT_ULP_WH_PLUS_SYM_TL4_HDR_TYPE_IGNORE = 0,
581 BNXT_ULP_WH_PLUS_SYM_TL4_HDR_TYPE_TCP = 0,
582 BNXT_ULP_WH_PLUS_SYM_TL4_HDR_TYPE_UDP = 1,
583 BNXT_ULP_WH_PLUS_SYM_TUN_HDR_VALID_IGNORE = 0,
584 BNXT_ULP_WH_PLUS_SYM_TUN_HDR_VALID_NO = 0,
585 BNXT_ULP_WH_PLUS_SYM_TUN_HDR_VALID_YES = 1,
586 BNXT_ULP_WH_PLUS_SYM_TUN_HDR_ERROR_IGNORE = 0,
587 BNXT_ULP_WH_PLUS_SYM_TUN_HDR_ERROR_NO = 0,
588 BNXT_ULP_WH_PLUS_SYM_TUN_HDR_ERROR_YES = 1,
589 BNXT_ULP_WH_PLUS_SYM_TUN_HDR_TYPE_IGNORE = 0,
590 BNXT_ULP_WH_PLUS_SYM_TUN_HDR_TYPE_VXLAN = 0,
591 BNXT_ULP_WH_PLUS_SYM_TUN_HDR_TYPE_GENEVE = 1,
592 BNXT_ULP_WH_PLUS_SYM_TUN_HDR_TYPE_NVGRE = 2,
593 BNXT_ULP_WH_PLUS_SYM_TUN_HDR_TYPE_GRE = 3,
594 BNXT_ULP_WH_PLUS_SYM_TUN_HDR_TYPE_IPV4 = 4,
595 BNXT_ULP_WH_PLUS_SYM_TUN_HDR_TYPE_IPV6 = 5,
596 BNXT_ULP_WH_PLUS_SYM_TUN_HDR_TYPE_PPPOE = 6,
597 BNXT_ULP_WH_PLUS_SYM_TUN_HDR_TYPE_MPLS = 7,
598 BNXT_ULP_WH_PLUS_SYM_TUN_HDR_TYPE_UPAR1 = 8,
599 BNXT_ULP_WH_PLUS_SYM_TUN_HDR_TYPE_UPAR2 = 9,
600 BNXT_ULP_WH_PLUS_SYM_TUN_HDR_TYPE_NONE = 15,
601 BNXT_ULP_WH_PLUS_SYM_TUN_HDR_FLAGS_IGNORE = 0,
602 BNXT_ULP_WH_PLUS_SYM_L2_HDR_VALID_IGNORE = 0,
603 BNXT_ULP_WH_PLUS_SYM_L2_HDR_VALID_NO = 0,
604 BNXT_ULP_WH_PLUS_SYM_L2_HDR_VALID_YES = 1,
605 BNXT_ULP_WH_PLUS_SYM_L2_HDR_ERROR_IGNORE = 0,
606 BNXT_ULP_WH_PLUS_SYM_L2_HDR_ERROR_NO = 0,
607 BNXT_ULP_WH_PLUS_SYM_L2_HDR_ERROR_YES = 1,
608 BNXT_ULP_WH_PLUS_SYM_L2_HDR_TYPE_IGNORE = 0,
609 BNXT_ULP_WH_PLUS_SYM_L2_HDR_TYPE_DIX = 0,
610 BNXT_ULP_WH_PLUS_SYM_L2_HDR_TYPE_LLC_SNAP = 1,
611 BNXT_ULP_WH_PLUS_SYM_L2_HDR_TYPE_LLC = 2,
612 BNXT_ULP_WH_PLUS_SYM_L2_UC_MC_BC_IGNORE = 0,
613 BNXT_ULP_WH_PLUS_SYM_L2_UC_MC_BC_UC = 0,
614 BNXT_ULP_WH_PLUS_SYM_L2_UC_MC_BC_MC = 2,
615 BNXT_ULP_WH_PLUS_SYM_L2_UC_MC_BC_BC = 3,
616 BNXT_ULP_WH_PLUS_SYM_L2_VTAG_PRESENT_IGNORE = 0,
617 BNXT_ULP_WH_PLUS_SYM_L2_VTAG_PRESENT_NO = 0,
618 BNXT_ULP_WH_PLUS_SYM_L2_VTAG_PRESENT_YES = 1,
619 BNXT_ULP_WH_PLUS_SYM_L2_TWO_VTAGS_IGNORE = 0,
620 BNXT_ULP_WH_PLUS_SYM_L2_TWO_VTAGS_NO = 0,
621 BNXT_ULP_WH_PLUS_SYM_L2_TWO_VTAGS_YES = 1,
622 BNXT_ULP_WH_PLUS_SYM_L3_HDR_VALID_IGNORE = 0,
623 BNXT_ULP_WH_PLUS_SYM_L3_HDR_VALID_NO = 0,
624 BNXT_ULP_WH_PLUS_SYM_L3_HDR_VALID_YES = 1,
625 BNXT_ULP_WH_PLUS_SYM_L3_HDR_ERROR_IGNORE = 0,
626 BNXT_ULP_WH_PLUS_SYM_L3_HDR_ERROR_NO = 0,
627 BNXT_ULP_WH_PLUS_SYM_L3_HDR_ERROR_YES = 1,
628 BNXT_ULP_WH_PLUS_SYM_L3_HDR_TYPE_IGNORE = 0,
629 BNXT_ULP_WH_PLUS_SYM_L3_HDR_TYPE_IPV4 = 0,
630 BNXT_ULP_WH_PLUS_SYM_L3_HDR_TYPE_IPV6 = 1,
631 BNXT_ULP_WH_PLUS_SYM_L3_HDR_TYPE_ARP = 2,
632 BNXT_ULP_WH_PLUS_SYM_L3_HDR_TYPE_PTP = 3,
633 BNXT_ULP_WH_PLUS_SYM_L3_HDR_TYPE_EAPOL = 4,
634 BNXT_ULP_WH_PLUS_SYM_L3_HDR_TYPE_ROCE = 5,
635 BNXT_ULP_WH_PLUS_SYM_L3_HDR_TYPE_FCOE = 6,
636 BNXT_ULP_WH_PLUS_SYM_L3_HDR_TYPE_UPAR1 = 7,
637 BNXT_ULP_WH_PLUS_SYM_L3_HDR_TYPE_UPAR2 = 8,
638 BNXT_ULP_WH_PLUS_SYM_L3_HDR_ISIP_IGNORE = 0,
639 BNXT_ULP_WH_PLUS_SYM_L3_HDR_ISIP_NO = 0,
640 BNXT_ULP_WH_PLUS_SYM_L3_HDR_ISIP_YES = 1,
641 BNXT_ULP_WH_PLUS_SYM_L3_IPV6_CMP_SRC_IGNORE = 0,
642 BNXT_ULP_WH_PLUS_SYM_L3_IPV6_CMP_SRC_NO = 0,
643 BNXT_ULP_WH_PLUS_SYM_L3_IPV6_CMP_SRC_YES = 1,
644 BNXT_ULP_WH_PLUS_SYM_L3_IPV6_CMP_DST_IGNORE = 0,
645 BNXT_ULP_WH_PLUS_SYM_L3_IPV6_CMP_DST_NO = 0,
646 BNXT_ULP_WH_PLUS_SYM_L3_IPV6_CMP_DST_YES = 1,
647 BNXT_ULP_WH_PLUS_SYM_L4_HDR_VALID_IGNORE = 0,
648 BNXT_ULP_WH_PLUS_SYM_L4_HDR_VALID_NO = 0,
649 BNXT_ULP_WH_PLUS_SYM_L4_HDR_VALID_YES = 1,
650 BNXT_ULP_WH_PLUS_SYM_L4_HDR_ERROR_IGNORE = 0,
651 BNXT_ULP_WH_PLUS_SYM_L4_HDR_ERROR_NO = 0,
652 BNXT_ULP_WH_PLUS_SYM_L4_HDR_ERROR_YES = 1,
653 BNXT_ULP_WH_PLUS_SYM_L4_HDR_TYPE_IGNORE = 0,
654 BNXT_ULP_WH_PLUS_SYM_L4_HDR_TYPE_TCP = 0,
655 BNXT_ULP_WH_PLUS_SYM_L4_HDR_TYPE_UDP = 1,
656 BNXT_ULP_WH_PLUS_SYM_L4_HDR_TYPE_ICMP = 2,
657 BNXT_ULP_WH_PLUS_SYM_L4_HDR_TYPE_UPAR1 = 3,
658 BNXT_ULP_WH_PLUS_SYM_L4_HDR_TYPE_UPAR2 = 4,
659 BNXT_ULP_WH_PLUS_SYM_L4_HDR_TYPE_BTH_V1 = 5,
660 BNXT_ULP_WH_PLUS_SYM_L4_HDR_IS_UDP_TCP_IGNORE = 0,
661 BNXT_ULP_WH_PLUS_SYM_L4_HDR_IS_UDP_TCP_NO = 0,
662 BNXT_ULP_WH_PLUS_SYM_L4_HDR_IS_UDP_TCP_YES = 1,
663 BNXT_ULP_WH_PLUS_SYM_POP_VLAN_NO = 0,
664 BNXT_ULP_WH_PLUS_SYM_POP_VLAN_YES = 1,
665 BNXT_ULP_WH_PLUS_SYM_DECAP_FUNC_NONE = 0,
666 BNXT_ULP_WH_PLUS_SYM_DECAP_FUNC_THRU_TL2 = 3,
667 BNXT_ULP_WH_PLUS_SYM_DECAP_FUNC_THRU_TL3 = 8,
668 BNXT_ULP_WH_PLUS_SYM_DECAP_FUNC_THRU_TL4 = 9,
669 BNXT_ULP_WH_PLUS_SYM_DECAP_FUNC_THRU_TUN = 10,
670 BNXT_ULP_WH_PLUS_SYM_DECAP_FUNC_THRU_L2 = 11,
671 BNXT_ULP_WH_PLUS_SYM_DECAP_FUNC_THRU_L3 = 12,
672 BNXT_ULP_WH_PLUS_SYM_DECAP_FUNC_THRU_L4 = 13,
673 BNXT_ULP_WH_PLUS_SYM_ECV_VALID_NO = 0,
674 BNXT_ULP_WH_PLUS_SYM_ECV_VALID_YES = 1,
675 BNXT_ULP_WH_PLUS_SYM_ECV_CUSTOM_EN_NO = 0,
676 BNXT_ULP_WH_PLUS_SYM_ECV_CUSTOM_EN_YES = 1,
677 BNXT_ULP_WH_PLUS_SYM_ECV_L2_EN_NO = 0,
678 BNXT_ULP_WH_PLUS_SYM_ECV_L2_EN_YES = 1,
679 BNXT_ULP_WH_PLUS_SYM_ECV_VTAG_TYPE_NOP = 0,
680 BNXT_ULP_WH_PLUS_SYM_ECV_VTAG_TYPE_ADD_1_ENCAP_PRI = 1,
681 BNXT_ULP_WH_PLUS_SYM_ECV_VTAG_TYPE_ADD_1_IVLAN_PRI = 2,
682 BNXT_ULP_WH_PLUS_SYM_ECV_VTAG_TYPE_ADD_1_REMAP_DIFFSERV = 3,
683 BNXT_ULP_WH_PLUS_SYM_ECV_VTAG_TYPE_ADD_2_ENCAP_PRI = 4,
684 BNXT_ULP_WH_PLUS_SYM_ECV_VTAG_TYPE_ADD_2_REMAP_DIFFSERV = 5,
685 BNXT_ULP_WH_PLUS_SYM_ECV_VTAG_TYPE_ADD_0_ENCAP_PRI = 6,
686 BNXT_ULP_WH_PLUS_SYM_ECV_VTAG_TYPE_ADD_0_REMAP_DIFFSERV = 7,
687 BNXT_ULP_WH_PLUS_SYM_ECV_VTAG_TYPE_ADD_0_PRI_0 = 8,
688 BNXT_ULP_WH_PLUS_SYM_ECV_VTAG_TYPE_ADD_0_PRI_1 = 8,
689 BNXT_ULP_WH_PLUS_SYM_ECV_VTAG_TYPE_ADD_0_PRI_2 = 8,
690 BNXT_ULP_WH_PLUS_SYM_ECV_VTAG_TYPE_ADD_0_PRI_3 = 8,
691 BNXT_ULP_WH_PLUS_SYM_ECV_VTAG_TYPE_ADD_0_PRI_4 = 8,
692 BNXT_ULP_WH_PLUS_SYM_ECV_VTAG_TYPE_ADD_0_PRI_5 = 8,
693 BNXT_ULP_WH_PLUS_SYM_ECV_VTAG_TYPE_ADD_0_PRI_6 = 8,
694 BNXT_ULP_WH_PLUS_SYM_ECV_VTAG_TYPE_ADD_0_PRI_7 = 8,
695 BNXT_ULP_WH_PLUS_SYM_ECV_L3_TYPE_NONE = 0,
696 BNXT_ULP_WH_PLUS_SYM_ECV_L3_TYPE_IPV4 = 4,
697 BNXT_ULP_WH_PLUS_SYM_ECV_L3_TYPE_IPV6 = 5,
698 BNXT_ULP_WH_PLUS_SYM_ECV_L3_TYPE_MPLS_8847 = 6,
699 BNXT_ULP_WH_PLUS_SYM_ECV_L3_TYPE_MPLS_8848 = 7,
700 BNXT_ULP_WH_PLUS_SYM_ECV_L4_TYPE_NONE = 0,
701 BNXT_ULP_WH_PLUS_SYM_ECV_L4_TYPE_UDP = 4,
702 BNXT_ULP_WH_PLUS_SYM_ECV_L4_TYPE_UDP_CSUM = 5,
703 BNXT_ULP_WH_PLUS_SYM_ECV_L4_TYPE_UDP_ENTROPY = 6,
704 BNXT_ULP_WH_PLUS_SYM_ECV_L4_TYPE_UDP_ENTROPY_CSUM = 7,
705 BNXT_ULP_WH_PLUS_SYM_ECV_TUN_TYPE_NONE = 0,
706 BNXT_ULP_WH_PLUS_SYM_ECV_TUN_TYPE_GENERIC = 1,
707 BNXT_ULP_WH_PLUS_SYM_ECV_TUN_TYPE_VXLAN = 2,
708 BNXT_ULP_WH_PLUS_SYM_ECV_TUN_TYPE_NGE = 3,
709 BNXT_ULP_WH_PLUS_SYM_ECV_TUN_TYPE_NVGRE = 4,
710 BNXT_ULP_WH_PLUS_SYM_ECV_TUN_TYPE_GRE = 5,
711 BNXT_ULP_WH_PLUS_SYM_EEM_ACT_REC_INT = 1,
712 BNXT_ULP_WH_PLUS_SYM_EEM_EXT_FLOW_CNTR = 0,
713 BNXT_ULP_WH_PLUS_SYM_UC_ACT_REC = 0,
714 BNXT_ULP_WH_PLUS_SYM_MC_ACT_REC = 1,
715 BNXT_ULP_WH_PLUS_SYM_ACT_REC_DROP_YES = 1,
716 BNXT_ULP_WH_PLUS_SYM_ACT_REC_DROP_NO = 0,
717 BNXT_ULP_WH_PLUS_SYM_ACT_REC_POP_VLAN_YES = 1,
718 BNXT_ULP_WH_PLUS_SYM_ACT_REC_POP_VLAN_NO = 0,
719 BNXT_ULP_WH_PLUS_SYM_ACT_REC_METER_EN_YES = 1,
720 BNXT_ULP_WH_PLUS_SYM_ACT_REC_METER_EN_NO = 0,
721 BNXT_ULP_WH_PLUS_SYM_LOOPBACK_PORT = 4,
722 BNXT_ULP_WH_PLUS_SYM_LOOPBACK_PARIF = 15,
723 BNXT_ULP_WH_PLUS_SYM_EXT_EM_MAX_KEY_SIZE = 448,
724 BNXT_ULP_WH_PLUS_SYM_MATCH_TYPE_EM = 0,
725 BNXT_ULP_WH_PLUS_SYM_MATCH_TYPE_WM = 1,
726 BNXT_ULP_WH_PLUS_SYM_IP_PROTO_ICMP = 1,
727 BNXT_ULP_WH_PLUS_SYM_IP_PROTO_IGMP = 2,
728 BNXT_ULP_WH_PLUS_SYM_IP_PROTO_IP_IN_IP = 4,
729 BNXT_ULP_WH_PLUS_SYM_IP_PROTO_TCP = 6,
730 BNXT_ULP_WH_PLUS_SYM_IP_PROTO_UDP = 17,
731 BNXT_ULP_WH_PLUS_SYM_VF_FUNC_PARIF = 15,
732 BNXT_ULP_WH_PLUS_SYM_NO = 0,
733 BNXT_ULP_WH_PLUS_SYM_YES = 1,
734 BNXT_ULP_WH_PLUS_SYM_RECYCLE_DST = 0x800
737 enum bnxt_ulp_stingray_sym {
738 BNXT_ULP_STINGRAY_SYM_PKT_TYPE_IGNORE = 0,
739 BNXT_ULP_STINGRAY_SYM_PKT_TYPE_L2 = 0,
740 BNXT_ULP_STINGRAY_SYM_PKT_TYPE_0_IGNORE = 0,
741 BNXT_ULP_STINGRAY_SYM_PKT_TYPE_0_L2 = 0,
742 BNXT_ULP_STINGRAY_SYM_PKT_TYPE_1_IGNORE = 0,
743 BNXT_ULP_STINGRAY_SYM_PKT_TYPE_1_L2 = 0,
744 BNXT_ULP_STINGRAY_SYM_RECYCLE_CNT_IGNORE = 0,
745 BNXT_ULP_STINGRAY_SYM_RECYCLE_CNT_ZERO = 0,
746 BNXT_ULP_STINGRAY_SYM_RECYCLE_CNT_ONE = 1,
747 BNXT_ULP_STINGRAY_SYM_RECYCLE_CNT_TWO = 2,
748 BNXT_ULP_STINGRAY_SYM_RECYCLE_CNT_THREE = 3,
749 BNXT_ULP_STINGRAY_SYM_AGG_ERROR_IGNORE = 0,
750 BNXT_ULP_STINGRAY_SYM_AGG_ERROR_NO = 0,
751 BNXT_ULP_STINGRAY_SYM_AGG_ERROR_YES = 1,
752 BNXT_ULP_STINGRAY_SYM_RESERVED_IGNORE = 0,
753 BNXT_ULP_STINGRAY_SYM_HREC_NEXT_IGNORE = 0,
754 BNXT_ULP_STINGRAY_SYM_HREC_NEXT_NO = 0,
755 BNXT_ULP_STINGRAY_SYM_HREC_NEXT_YES = 1,
756 BNXT_ULP_STINGRAY_SYM_TL2_HDR_VALID_IGNORE = 0,
757 BNXT_ULP_STINGRAY_SYM_TL2_HDR_VALID_NO = 0,
758 BNXT_ULP_STINGRAY_SYM_TL2_HDR_VALID_YES = 1,
759 BNXT_ULP_STINGRAY_SYM_TL2_HDR_TYPE_IGNORE = 0,
760 BNXT_ULP_STINGRAY_SYM_TL2_HDR_TYPE_DIX = 0,
761 BNXT_ULP_STINGRAY_SYM_TL2_UC_MC_BC_IGNORE = 0,
762 BNXT_ULP_STINGRAY_SYM_TL2_UC_MC_BC_UC = 0,
763 BNXT_ULP_STINGRAY_SYM_TL2_UC_MC_BC_MC = 2,
764 BNXT_ULP_STINGRAY_SYM_TL2_UC_MC_BC_BC = 3,
765 BNXT_ULP_STINGRAY_SYM_TL2_VTAG_PRESENT_IGNORE = 0,
766 BNXT_ULP_STINGRAY_SYM_TL2_VTAG_PRESENT_NO = 0,
767 BNXT_ULP_STINGRAY_SYM_TL2_VTAG_PRESENT_YES = 1,
768 BNXT_ULP_STINGRAY_SYM_TL2_TWO_VTAGS_IGNORE = 0,
769 BNXT_ULP_STINGRAY_SYM_TL2_TWO_VTAGS_NO = 0,
770 BNXT_ULP_STINGRAY_SYM_TL2_TWO_VTAGS_YES = 1,
771 BNXT_ULP_STINGRAY_SYM_TL3_HDR_VALID_IGNORE = 0,
772 BNXT_ULP_STINGRAY_SYM_TL3_HDR_VALID_NO = 0,
773 BNXT_ULP_STINGRAY_SYM_TL3_HDR_VALID_YES = 1,
774 BNXT_ULP_STINGRAY_SYM_TL3_HDR_ERROR_IGNORE = 0,
775 BNXT_ULP_STINGRAY_SYM_TL3_HDR_ERROR_NO = 0,
776 BNXT_ULP_STINGRAY_SYM_TL3_HDR_ERROR_YES = 1,
777 BNXT_ULP_STINGRAY_SYM_TL3_HDR_TYPE_IGNORE = 0,
778 BNXT_ULP_STINGRAY_SYM_TL3_HDR_TYPE_IPV4 = 0,
779 BNXT_ULP_STINGRAY_SYM_TL3_HDR_TYPE_IPV6 = 1,
780 BNXT_ULP_STINGRAY_SYM_TL3_HDR_ISIP_IGNORE = 0,
781 BNXT_ULP_STINGRAY_SYM_TL3_HDR_ISIP_NO = 0,
782 BNXT_ULP_STINGRAY_SYM_TL3_HDR_ISIP_YES = 1,
783 BNXT_ULP_STINGRAY_SYM_TL3_IPV6_CMP_SRC_IGNORE = 0,
784 BNXT_ULP_STINGRAY_SYM_TL3_IPV6_CMP_SRC_NO = 0,
785 BNXT_ULP_STINGRAY_SYM_TL3_IPV6_CMP_SRC_YES = 1,
786 BNXT_ULP_STINGRAY_SYM_TL3_IPV6_CMP_DST_IGNORE = 0,
787 BNXT_ULP_STINGRAY_SYM_TL3_IPV6_CMP_DST_NO = 0,
788 BNXT_ULP_STINGRAY_SYM_TL3_IPV6_CMP_DST_YES = 1,
789 BNXT_ULP_STINGRAY_SYM_TL4_HDR_VALID_IGNORE = 0,
790 BNXT_ULP_STINGRAY_SYM_TL4_HDR_VALID_NO = 0,
791 BNXT_ULP_STINGRAY_SYM_TL4_HDR_VALID_YES = 1,
792 BNXT_ULP_STINGRAY_SYM_TL4_HDR_ERROR_IGNORE = 0,
793 BNXT_ULP_STINGRAY_SYM_TL4_HDR_ERROR_NO = 0,
794 BNXT_ULP_STINGRAY_SYM_TL4_HDR_ERROR_YES = 1,
795 BNXT_ULP_STINGRAY_SYM_TL4_HDR_IS_UDP_TCP_IGNORE = 0,
796 BNXT_ULP_STINGRAY_SYM_TL4_HDR_IS_UDP_TCP_NO = 0,
797 BNXT_ULP_STINGRAY_SYM_TL4_HDR_IS_UDP_TCP_YES = 1,
798 BNXT_ULP_STINGRAY_SYM_TL4_HDR_TYPE_IGNORE = 0,
799 BNXT_ULP_STINGRAY_SYM_TL4_HDR_TYPE_TCP = 0,
800 BNXT_ULP_STINGRAY_SYM_TL4_HDR_TYPE_UDP = 1,
801 BNXT_ULP_STINGRAY_SYM_TUN_HDR_VALID_IGNORE = 0,
802 BNXT_ULP_STINGRAY_SYM_TUN_HDR_VALID_NO = 0,
803 BNXT_ULP_STINGRAY_SYM_TUN_HDR_VALID_YES = 1,
804 BNXT_ULP_STINGRAY_SYM_TUN_HDR_ERROR_IGNORE = 0,
805 BNXT_ULP_STINGRAY_SYM_TUN_HDR_ERROR_NO = 0,
806 BNXT_ULP_STINGRAY_SYM_TUN_HDR_ERROR_YES = 1,
807 BNXT_ULP_STINGRAY_SYM_TUN_HDR_TYPE_IGNORE = 0,
808 BNXT_ULP_STINGRAY_SYM_TUN_HDR_TYPE_VXLAN = 0,
809 BNXT_ULP_STINGRAY_SYM_TUN_HDR_TYPE_GENEVE = 1,
810 BNXT_ULP_STINGRAY_SYM_TUN_HDR_TYPE_NVGRE = 2,
811 BNXT_ULP_STINGRAY_SYM_TUN_HDR_TYPE_GRE = 3,
812 BNXT_ULP_STINGRAY_SYM_TUN_HDR_TYPE_IPV4 = 4,
813 BNXT_ULP_STINGRAY_SYM_TUN_HDR_TYPE_IPV6 = 5,
814 BNXT_ULP_STINGRAY_SYM_TUN_HDR_TYPE_PPPOE = 6,
815 BNXT_ULP_STINGRAY_SYM_TUN_HDR_TYPE_MPLS = 7,
816 BNXT_ULP_STINGRAY_SYM_TUN_HDR_TYPE_UPAR1 = 8,
817 BNXT_ULP_STINGRAY_SYM_TUN_HDR_TYPE_UPAR2 = 9,
818 BNXT_ULP_STINGRAY_SYM_TUN_HDR_TYPE_NONE = 15,
819 BNXT_ULP_STINGRAY_SYM_TUN_HDR_FLAGS_IGNORE = 0,
820 BNXT_ULP_STINGRAY_SYM_L2_HDR_VALID_IGNORE = 0,
821 BNXT_ULP_STINGRAY_SYM_L2_HDR_VALID_NO = 0,
822 BNXT_ULP_STINGRAY_SYM_L2_HDR_VALID_YES = 1,
823 BNXT_ULP_STINGRAY_SYM_L2_HDR_ERROR_IGNORE = 0,
824 BNXT_ULP_STINGRAY_SYM_L2_HDR_ERROR_NO = 0,
825 BNXT_ULP_STINGRAY_SYM_L2_HDR_ERROR_YES = 1,
826 BNXT_ULP_STINGRAY_SYM_L2_HDR_TYPE_IGNORE = 0,
827 BNXT_ULP_STINGRAY_SYM_L2_HDR_TYPE_DIX = 0,
828 BNXT_ULP_STINGRAY_SYM_L2_HDR_TYPE_LLC_SNAP = 1,
829 BNXT_ULP_STINGRAY_SYM_L2_HDR_TYPE_LLC = 2,
830 BNXT_ULP_STINGRAY_SYM_L2_UC_MC_BC_IGNORE = 0,
831 BNXT_ULP_STINGRAY_SYM_L2_UC_MC_BC_UC = 0,
832 BNXT_ULP_STINGRAY_SYM_L2_UC_MC_BC_MC = 2,
833 BNXT_ULP_STINGRAY_SYM_L2_UC_MC_BC_BC = 3,
834 BNXT_ULP_STINGRAY_SYM_L2_VTAG_PRESENT_IGNORE = 0,
835 BNXT_ULP_STINGRAY_SYM_L2_VTAG_PRESENT_NO = 0,
836 BNXT_ULP_STINGRAY_SYM_L2_VTAG_PRESENT_YES = 1,
837 BNXT_ULP_STINGRAY_SYM_L2_TWO_VTAGS_IGNORE = 0,
838 BNXT_ULP_STINGRAY_SYM_L2_TWO_VTAGS_NO = 0,
839 BNXT_ULP_STINGRAY_SYM_L2_TWO_VTAGS_YES = 1,
840 BNXT_ULP_STINGRAY_SYM_L3_HDR_VALID_IGNORE = 0,
841 BNXT_ULP_STINGRAY_SYM_L3_HDR_VALID_NO = 0,
842 BNXT_ULP_STINGRAY_SYM_L3_HDR_VALID_YES = 1,
843 BNXT_ULP_STINGRAY_SYM_L3_HDR_ERROR_IGNORE = 0,
844 BNXT_ULP_STINGRAY_SYM_L3_HDR_ERROR_NO = 0,
845 BNXT_ULP_STINGRAY_SYM_L3_HDR_ERROR_YES = 1,
846 BNXT_ULP_STINGRAY_SYM_L3_HDR_TYPE_IGNORE = 0,
847 BNXT_ULP_STINGRAY_SYM_L3_HDR_TYPE_IPV4 = 0,
848 BNXT_ULP_STINGRAY_SYM_L3_HDR_TYPE_IPV6 = 1,
849 BNXT_ULP_STINGRAY_SYM_L3_HDR_TYPE_ARP = 2,
850 BNXT_ULP_STINGRAY_SYM_L3_HDR_TYPE_PTP = 3,
851 BNXT_ULP_STINGRAY_SYM_L3_HDR_TYPE_EAPOL = 4,
852 BNXT_ULP_STINGRAY_SYM_L3_HDR_TYPE_ROCE = 5,
853 BNXT_ULP_STINGRAY_SYM_L3_HDR_TYPE_FCOE = 6,
854 BNXT_ULP_STINGRAY_SYM_L3_HDR_TYPE_UPAR1 = 7,
855 BNXT_ULP_STINGRAY_SYM_L3_HDR_TYPE_UPAR2 = 8,
856 BNXT_ULP_STINGRAY_SYM_L3_HDR_ISIP_IGNORE = 0,
857 BNXT_ULP_STINGRAY_SYM_L3_HDR_ISIP_NO = 0,
858 BNXT_ULP_STINGRAY_SYM_L3_HDR_ISIP_YES = 1,
859 BNXT_ULP_STINGRAY_SYM_L3_IPV6_CMP_SRC_IGNORE = 0,
860 BNXT_ULP_STINGRAY_SYM_L3_IPV6_CMP_SRC_NO = 0,
861 BNXT_ULP_STINGRAY_SYM_L3_IPV6_CMP_SRC_YES = 1,
862 BNXT_ULP_STINGRAY_SYM_L3_IPV6_CMP_DST_IGNORE = 0,
863 BNXT_ULP_STINGRAY_SYM_L3_IPV6_CMP_DST_NO = 0,
864 BNXT_ULP_STINGRAY_SYM_L3_IPV6_CMP_DST_YES = 1,
865 BNXT_ULP_STINGRAY_SYM_L4_HDR_VALID_IGNORE = 0,
866 BNXT_ULP_STINGRAY_SYM_L4_HDR_VALID_NO = 0,
867 BNXT_ULP_STINGRAY_SYM_L4_HDR_VALID_YES = 1,
868 BNXT_ULP_STINGRAY_SYM_L4_HDR_ERROR_IGNORE = 0,
869 BNXT_ULP_STINGRAY_SYM_L4_HDR_ERROR_NO = 0,
870 BNXT_ULP_STINGRAY_SYM_L4_HDR_ERROR_YES = 1,
871 BNXT_ULP_STINGRAY_SYM_L4_HDR_TYPE_IGNORE = 0,
872 BNXT_ULP_STINGRAY_SYM_L4_HDR_TYPE_TCP = 0,
873 BNXT_ULP_STINGRAY_SYM_L4_HDR_TYPE_UDP = 1,
874 BNXT_ULP_STINGRAY_SYM_L4_HDR_TYPE_ICMP = 2,
875 BNXT_ULP_STINGRAY_SYM_L4_HDR_TYPE_UPAR1 = 3,
876 BNXT_ULP_STINGRAY_SYM_L4_HDR_TYPE_UPAR2 = 4,
877 BNXT_ULP_STINGRAY_SYM_L4_HDR_TYPE_BTH_V1 = 5,
878 BNXT_ULP_STINGRAY_SYM_L4_HDR_IS_UDP_TCP_IGNORE = 0,
879 BNXT_ULP_STINGRAY_SYM_L4_HDR_IS_UDP_TCP_NO = 0,
880 BNXT_ULP_STINGRAY_SYM_L4_HDR_IS_UDP_TCP_YES = 1,
881 BNXT_ULP_STINGRAY_SYM_POP_VLAN_NO = 0,
882 BNXT_ULP_STINGRAY_SYM_POP_VLAN_YES = 1,
883 BNXT_ULP_STINGRAY_SYM_DECAP_FUNC_NONE = 0,
884 BNXT_ULP_STINGRAY_SYM_DECAP_FUNC_THRU_TL2 = 3,
885 BNXT_ULP_STINGRAY_SYM_DECAP_FUNC_THRU_TL3 = 8,
886 BNXT_ULP_STINGRAY_SYM_DECAP_FUNC_THRU_TL4 = 9,
887 BNXT_ULP_STINGRAY_SYM_DECAP_FUNC_THRU_TUN = 10,
888 BNXT_ULP_STINGRAY_SYM_DECAP_FUNC_THRU_L2 = 11,
889 BNXT_ULP_STINGRAY_SYM_DECAP_FUNC_THRU_L3 = 12,
890 BNXT_ULP_STINGRAY_SYM_DECAP_FUNC_THRU_L4 = 13,
891 BNXT_ULP_STINGRAY_SYM_ECV_VALID_NO = 0,
892 BNXT_ULP_STINGRAY_SYM_ECV_VALID_YES = 1,
893 BNXT_ULP_STINGRAY_SYM_ECV_CUSTOM_EN_NO = 0,
894 BNXT_ULP_STINGRAY_SYM_ECV_CUSTOM_EN_YES = 1,
895 BNXT_ULP_STINGRAY_SYM_ECV_L2_EN_NO = 0,
896 BNXT_ULP_STINGRAY_SYM_ECV_L2_EN_YES = 1,
897 BNXT_ULP_STINGRAY_SYM_ECV_VTAG_TYPE_NOP = 0,
898 BNXT_ULP_STINGRAY_SYM_ECV_VTAG_TYPE_ADD_1_ENCAP_PRI = 1,
899 BNXT_ULP_STINGRAY_SYM_ECV_VTAG_TYPE_ADD_1_IVLAN_PRI = 2,
900 BNXT_ULP_STINGRAY_SYM_ECV_VTAG_TYPE_ADD_1_REMAP_DIFFSERV = 3,
901 BNXT_ULP_STINGRAY_SYM_ECV_VTAG_TYPE_ADD_2_ENCAP_PRI = 4,
902 BNXT_ULP_STINGRAY_SYM_ECV_VTAG_TYPE_ADD_2_REMAP_DIFFSERV = 5,
903 BNXT_ULP_STINGRAY_SYM_ECV_VTAG_TYPE_ADD_0_ENCAP_PRI = 6,
904 BNXT_ULP_STINGRAY_SYM_ECV_VTAG_TYPE_ADD_0_REMAP_DIFFSERV = 7,
905 BNXT_ULP_STINGRAY_SYM_ECV_VTAG_TYPE_ADD_0_PRI_0 = 8,
906 BNXT_ULP_STINGRAY_SYM_ECV_VTAG_TYPE_ADD_0_PRI_1 = 8,
907 BNXT_ULP_STINGRAY_SYM_ECV_VTAG_TYPE_ADD_0_PRI_2 = 8,
908 BNXT_ULP_STINGRAY_SYM_ECV_VTAG_TYPE_ADD_0_PRI_3 = 8,
909 BNXT_ULP_STINGRAY_SYM_ECV_VTAG_TYPE_ADD_0_PRI_4 = 8,
910 BNXT_ULP_STINGRAY_SYM_ECV_VTAG_TYPE_ADD_0_PRI_5 = 8,
911 BNXT_ULP_STINGRAY_SYM_ECV_VTAG_TYPE_ADD_0_PRI_6 = 8,
912 BNXT_ULP_STINGRAY_SYM_ECV_VTAG_TYPE_ADD_0_PRI_7 = 8,
913 BNXT_ULP_STINGRAY_SYM_ECV_L3_TYPE_NONE = 0,
914 BNXT_ULP_STINGRAY_SYM_ECV_L3_TYPE_IPV4 = 4,
915 BNXT_ULP_STINGRAY_SYM_ECV_L3_TYPE_IPV6 = 5,
916 BNXT_ULP_STINGRAY_SYM_ECV_L3_TYPE_MPLS_8847 = 6,
917 BNXT_ULP_STINGRAY_SYM_ECV_L3_TYPE_MPLS_8848 = 7,
918 BNXT_ULP_STINGRAY_SYM_ECV_L4_TYPE_NONE = 0,
919 BNXT_ULP_STINGRAY_SYM_ECV_L4_TYPE_UDP = 4,
920 BNXT_ULP_STINGRAY_SYM_ECV_L4_TYPE_UDP_CSUM = 5,
921 BNXT_ULP_STINGRAY_SYM_ECV_L4_TYPE_UDP_ENTROPY = 6,
922 BNXT_ULP_STINGRAY_SYM_ECV_L4_TYPE_UDP_ENTROPY_CSUM = 7,
923 BNXT_ULP_STINGRAY_SYM_ECV_TUN_TYPE_NONE = 0,
924 BNXT_ULP_STINGRAY_SYM_ECV_TUN_TYPE_GENERIC = 1,
925 BNXT_ULP_STINGRAY_SYM_ECV_TUN_TYPE_VXLAN = 2,
926 BNXT_ULP_STINGRAY_SYM_ECV_TUN_TYPE_NGE = 3,
927 BNXT_ULP_STINGRAY_SYM_ECV_TUN_TYPE_NVGRE = 4,
928 BNXT_ULP_STINGRAY_SYM_ECV_TUN_TYPE_GRE = 5,
929 BNXT_ULP_STINGRAY_SYM_EEM_ACT_REC_INT = 0,
930 BNXT_ULP_STINGRAY_SYM_EEM_EXT_FLOW_CNTR = 1,
931 BNXT_ULP_STINGRAY_SYM_UC_ACT_REC = 0,
932 BNXT_ULP_STINGRAY_SYM_MC_ACT_REC = 1,
933 BNXT_ULP_STINGRAY_SYM_ACT_REC_DROP_YES = 1,
934 BNXT_ULP_STINGRAY_SYM_ACT_REC_DROP_NO = 0,
935 BNXT_ULP_STINGRAY_SYM_ACT_REC_POP_VLAN_YES = 1,
936 BNXT_ULP_STINGRAY_SYM_ACT_REC_POP_VLAN_NO = 0,
937 BNXT_ULP_STINGRAY_SYM_ACT_REC_METER_EN_YES = 1,
938 BNXT_ULP_STINGRAY_SYM_ACT_REC_METER_EN_NO = 0,
939 BNXT_ULP_STINGRAY_SYM_LOOPBACK_PORT = 16,
940 BNXT_ULP_STINGRAY_SYM_LOOPBACK_PARIF = 15,
941 BNXT_ULP_STINGRAY_SYM_EXT_EM_MAX_KEY_SIZE = 448,
942 BNXT_ULP_STINGRAY_SYM_MATCH_TYPE_EM = 0,
943 BNXT_ULP_STINGRAY_SYM_MATCH_TYPE_WM = 1,
944 BNXT_ULP_STINGRAY_SYM_IP_PROTO_ICMP = 1,
945 BNXT_ULP_STINGRAY_SYM_IP_PROTO_IGMP = 2,
946 BNXT_ULP_STINGRAY_SYM_IP_PROTO_IP_IN_IP = 4,
947 BNXT_ULP_STINGRAY_SYM_IP_PROTO_TCP = 6,
948 BNXT_ULP_STINGRAY_SYM_IP_PROTO_UDP = 17,
949 BNXT_ULP_STINGRAY_SYM_VF_FUNC_PARIF = 15,
950 BNXT_ULP_STINGRAY_SYM_NO = 0,
951 BNXT_ULP_STINGRAY_SYM_YES = 1,
952 BNXT_ULP_STINGRAY_SYM_RECYCLE_DST = 0x800
955 enum bnxt_ulp_class_hid {
956 BNXT_ULP_CLASS_HID_00fc = 0x00fc,
957 BNXT_ULP_CLASS_HID_0046 = 0x0046,
958 BNXT_ULP_CLASS_HID_0056 = 0x0056,
959 BNXT_ULP_CLASS_HID_00b8 = 0x00b8,
960 BNXT_ULP_CLASS_HID_0041 = 0x0041,
961 BNXT_ULP_CLASS_HID_00ab = 0x00ab,
962 BNXT_ULP_CLASS_HID_0053 = 0x0053,
963 BNXT_ULP_CLASS_HID_00a5 = 0x00a5,
964 BNXT_ULP_CLASS_HID_0069 = 0x0069,
965 BNXT_ULP_CLASS_HID_009d = 0x009d,
966 BNXT_ULP_CLASS_HID_0005 = 0x0005,
967 BNXT_ULP_CLASS_HID_006f = 0x006f,
968 BNXT_ULP_CLASS_HID_00af = 0x00af,
969 BNXT_ULP_CLASS_HID_00d3 = 0x00d3,
970 BNXT_ULP_CLASS_HID_005b = 0x005b,
971 BNXT_ULP_CLASS_HID_00ad = 0x00ad,
972 BNXT_ULP_CLASS_HID_0091 = 0x0091,
973 BNXT_ULP_CLASS_HID_00fb = 0x00fb,
974 BNXT_ULP_CLASS_HID_0063 = 0x0063,
975 BNXT_ULP_CLASS_HID_0097 = 0x0097,
976 BNXT_ULP_CLASS_HID_00cc = 0x00cc,
977 BNXT_ULP_CLASS_HID_00f0 = 0x00f0,
978 BNXT_ULP_CLASS_HID_00c0 = 0x00c0,
979 BNXT_ULP_CLASS_HID_002a = 0x002a,
980 BNXT_ULP_CLASS_HID_00c7 = 0x00c7,
981 BNXT_ULP_CLASS_HID_0029 = 0x0029,
982 BNXT_ULP_CLASS_HID_00d1 = 0x00d1,
983 BNXT_ULP_CLASS_HID_003b = 0x003b,
984 BNXT_ULP_CLASS_HID_00ef = 0x00ef,
985 BNXT_ULP_CLASS_HID_0013 = 0x0013,
986 BNXT_ULP_CLASS_HID_009b = 0x009b,
987 BNXT_ULP_CLASS_HID_00ed = 0x00ed,
988 BNXT_ULP_CLASS_HID_002d = 0x002d,
989 BNXT_ULP_CLASS_HID_0051 = 0x0051,
990 BNXT_ULP_CLASS_HID_00d9 = 0x00d9,
991 BNXT_ULP_CLASS_HID_0023 = 0x0023,
992 BNXT_ULP_CLASS_HID_0017 = 0x0017,
993 BNXT_ULP_CLASS_HID_0079 = 0x0079,
994 BNXT_ULP_CLASS_HID_00e1 = 0x00e1,
995 BNXT_ULP_CLASS_HID_0015 = 0x0015
998 enum bnxt_ulp_act_hid {
999 BNXT_ULP_ACT_HID_0000 = 0x0000,
1000 BNXT_ULP_ACT_HID_0001 = 0x0001,
1001 BNXT_ULP_ACT_HID_0400 = 0x0400,
1002 BNXT_ULP_ACT_HID_0331 = 0x0331,
1003 BNXT_ULP_ACT_HID_0010 = 0x0010,
1004 BNXT_ULP_ACT_HID_0731 = 0x0731,
1005 BNXT_ULP_ACT_HID_0341 = 0x0341,
1006 BNXT_ULP_ACT_HID_0002 = 0x0002,
1007 BNXT_ULP_ACT_HID_0003 = 0x0003,
1008 BNXT_ULP_ACT_HID_0402 = 0x0402,
1009 BNXT_ULP_ACT_HID_0333 = 0x0333,
1010 BNXT_ULP_ACT_HID_0012 = 0x0012,
1011 BNXT_ULP_ACT_HID_0733 = 0x0733,
1012 BNXT_ULP_ACT_HID_0343 = 0x0343
1015 enum bnxt_ulp_df_tpl {
1016 BNXT_ULP_DF_TPL_PORT_TO_VS = 3,
1017 BNXT_ULP_DF_TPL_VS_TO_PORT = 4,
1018 BNXT_ULP_DF_TPL_VFREP_TO_VF = 5,
1019 BNXT_ULP_DF_TPL_VF_TO_VFREP = 6,
1020 BNXT_ULP_DF_TPL_LOOPBACK_ACTION_REC = 7