1 /* SPDX-License-Identifier: BSD-3-Clause
2  * Copyright(c) 2014-2020 Broadcom
3  * All rights reserved.
4  */
5 
6 #ifndef ULP_HDR_FIELD_ENUMS_H_
7 #define ULP_HDR_FIELD_ENUMS_H_
8 
9 enum bnxt_ulp_hf0 {
10 	BNXT_ULP_HF0_IDX_SVIF_INDEX              = 0,
11 	BNXT_ULP_HF0_IDX_O_ETH_DMAC              = 1,
12 	BNXT_ULP_HF0_IDX_O_ETH_SMAC              = 2,
13 	BNXT_ULP_HF0_IDX_O_ETH_TYPE              = 3,
14 	BNXT_ULP_HF0_IDX_OO_VLAN_CFI_PRI         = 4,
15 	BNXT_ULP_HF0_IDX_OO_VLAN_VID             = 5,
16 	BNXT_ULP_HF0_IDX_OO_VLAN_TYPE            = 6,
17 	BNXT_ULP_HF0_IDX_OI_VLAN_CFI_PRI         = 7,
18 	BNXT_ULP_HF0_IDX_OI_VLAN_VID             = 8,
19 	BNXT_ULP_HF0_IDX_OI_VLAN_TYPE            = 9,
20 	BNXT_ULP_HF0_IDX_O_IPV4_VER              = 10,
21 	BNXT_ULP_HF0_IDX_O_IPV4_TOS              = 11,
22 	BNXT_ULP_HF0_IDX_O_IPV4_LEN              = 12,
23 	BNXT_ULP_HF0_IDX_O_IPV4_FRAG_ID          = 13,
24 	BNXT_ULP_HF0_IDX_O_IPV4_FRAG_OFF         = 14,
25 	BNXT_ULP_HF0_IDX_O_IPV4_TTL              = 15,
26 	BNXT_ULP_HF0_IDX_O_IPV4_NEXT_PID         = 16,
27 	BNXT_ULP_HF0_IDX_O_IPV4_CSUM             = 17,
28 	BNXT_ULP_HF0_IDX_O_IPV4_SRC_ADDR         = 18,
29 	BNXT_ULP_HF0_IDX_O_IPV4_DST_ADDR         = 19,
30 	BNXT_ULP_HF0_IDX_O_UDP_SRC_PORT          = 20,
31 	BNXT_ULP_HF0_IDX_O_UDP_DST_PORT          = 21,
32 	BNXT_ULP_HF0_IDX_O_UDP_LENGTH            = 22,
33 	BNXT_ULP_HF0_IDX_O_UDP_CSUM              = 23
34 };
35 
36 enum bnxt_ulp_hf1 {
37 	BNXT_ULP_HF1_IDX_SVIF_INDEX              = 0,
38 	BNXT_ULP_HF1_IDX_O_ETH_DMAC              = 1,
39 	BNXT_ULP_HF1_IDX_O_ETH_SMAC              = 2,
40 	BNXT_ULP_HF1_IDX_O_ETH_TYPE              = 3,
41 	BNXT_ULP_HF1_IDX_OO_VLAN_CFI_PRI         = 4,
42 	BNXT_ULP_HF1_IDX_OO_VLAN_VID             = 5,
43 	BNXT_ULP_HF1_IDX_OO_VLAN_TYPE            = 6,
44 	BNXT_ULP_HF1_IDX_OI_VLAN_CFI_PRI         = 7,
45 	BNXT_ULP_HF1_IDX_OI_VLAN_VID             = 8,
46 	BNXT_ULP_HF1_IDX_OI_VLAN_TYPE            = 9,
47 	BNXT_ULP_HF1_IDX_O_IPV4_VER              = 10,
48 	BNXT_ULP_HF1_IDX_O_IPV4_TOS              = 11,
49 	BNXT_ULP_HF1_IDX_O_IPV4_LEN              = 12,
50 	BNXT_ULP_HF1_IDX_O_IPV4_FRAG_ID          = 13,
51 	BNXT_ULP_HF1_IDX_O_IPV4_FRAG_OFF         = 14,
52 	BNXT_ULP_HF1_IDX_O_IPV4_TTL              = 15,
53 	BNXT_ULP_HF1_IDX_O_IPV4_NEXT_PID         = 16,
54 	BNXT_ULP_HF1_IDX_O_IPV4_CSUM             = 17,
55 	BNXT_ULP_HF1_IDX_O_IPV4_SRC_ADDR         = 18,
56 	BNXT_ULP_HF1_IDX_O_IPV4_DST_ADDR         = 19,
57 	BNXT_ULP_HF1_IDX_O_UDP_SRC_PORT          = 20,
58 	BNXT_ULP_HF1_IDX_O_UDP_DST_PORT          = 21,
59 	BNXT_ULP_HF1_IDX_O_UDP_LENGTH            = 22,
60 	BNXT_ULP_HF1_IDX_O_UDP_CSUM              = 23
61 };
62 
63 enum bnxt_ulp_hf2 {
64 	BNXT_ULP_HF2_IDX_SVIF_INDEX              = 0,
65 	BNXT_ULP_HF2_IDX_O_ETH_DMAC              = 1,
66 	BNXT_ULP_HF2_IDX_O_ETH_SMAC              = 2,
67 	BNXT_ULP_HF2_IDX_O_ETH_TYPE              = 3,
68 	BNXT_ULP_HF2_IDX_OO_VLAN_CFI_PRI         = 4,
69 	BNXT_ULP_HF2_IDX_OO_VLAN_VID             = 5,
70 	BNXT_ULP_HF2_IDX_OO_VLAN_TYPE            = 6,
71 	BNXT_ULP_HF2_IDX_OI_VLAN_CFI_PRI         = 7,
72 	BNXT_ULP_HF2_IDX_OI_VLAN_VID             = 8,
73 	BNXT_ULP_HF2_IDX_OI_VLAN_TYPE            = 9,
74 	BNXT_ULP_HF2_IDX_O_IPV4_VER              = 10,
75 	BNXT_ULP_HF2_IDX_O_IPV4_TOS              = 11,
76 	BNXT_ULP_HF2_IDX_O_IPV4_LEN              = 12,
77 	BNXT_ULP_HF2_IDX_O_IPV4_FRAG_ID          = 13,
78 	BNXT_ULP_HF2_IDX_O_IPV4_FRAG_OFF         = 14,
79 	BNXT_ULP_HF2_IDX_O_IPV4_TTL              = 15,
80 	BNXT_ULP_HF2_IDX_O_IPV4_NEXT_PID         = 16,
81 	BNXT_ULP_HF2_IDX_O_IPV4_CSUM             = 17,
82 	BNXT_ULP_HF2_IDX_O_IPV4_SRC_ADDR         = 18,
83 	BNXT_ULP_HF2_IDX_O_IPV4_DST_ADDR         = 19,
84 	BNXT_ULP_HF2_IDX_O_UDP_SRC_PORT          = 20,
85 	BNXT_ULP_HF2_IDX_O_UDP_DST_PORT          = 21,
86 	BNXT_ULP_HF2_IDX_O_UDP_LENGTH            = 22,
87 	BNXT_ULP_HF2_IDX_O_UDP_CSUM              = 23,
88 	BNXT_ULP_HF2_IDX_T_VXLAN_FLAGS           = 24,
89 	BNXT_ULP_HF2_IDX_T_VXLAN_RSVD0           = 25,
90 	BNXT_ULP_HF2_IDX_T_VXLAN_VNI             = 26,
91 	BNXT_ULP_HF2_IDX_T_VXLAN_RSVD1           = 27,
92 	BNXT_ULP_HF2_IDX_I_ETH_DMAC              = 28,
93 	BNXT_ULP_HF2_IDX_I_ETH_SMAC              = 29,
94 	BNXT_ULP_HF2_IDX_I_ETH_TYPE              = 30,
95 	BNXT_ULP_HF2_IDX_IO_VLAN_CFI_PRI         = 31,
96 	BNXT_ULP_HF2_IDX_IO_VLAN_VID             = 32,
97 	BNXT_ULP_HF2_IDX_IO_VLAN_TYPE            = 33,
98 	BNXT_ULP_HF2_IDX_II_VLAN_CFI_PRI         = 34,
99 	BNXT_ULP_HF2_IDX_II_VLAN_VID             = 35,
100 	BNXT_ULP_HF2_IDX_II_VLAN_TYPE            = 36,
101 	BNXT_ULP_HF2_IDX_I_IPV4_VER              = 37,
102 	BNXT_ULP_HF2_IDX_I_IPV4_TOS              = 38,
103 	BNXT_ULP_HF2_IDX_I_IPV4_LEN              = 39,
104 	BNXT_ULP_HF2_IDX_I_IPV4_FRAG_ID          = 40,
105 	BNXT_ULP_HF2_IDX_I_IPV4_FRAG_OFF         = 41,
106 	BNXT_ULP_HF2_IDX_I_IPV4_TTL              = 42,
107 	BNXT_ULP_HF2_IDX_I_IPV4_NEXT_PID         = 43,
108 	BNXT_ULP_HF2_IDX_I_IPV4_CSUM             = 44,
109 	BNXT_ULP_HF2_IDX_I_IPV4_SRC_ADDR         = 45,
110 	BNXT_ULP_HF2_IDX_I_IPV4_DST_ADDR         = 46,
111 	BNXT_ULP_HF2_IDX_I_UDP_SRC_PORT          = 47,
112 	BNXT_ULP_HF2_IDX_I_UDP_DST_PORT          = 48,
113 	BNXT_ULP_HF2_IDX_I_UDP_LENGTH            = 49,
114 	BNXT_ULP_HF2_IDX_I_UDP_CSUM              = 50
115 };
116 
117 enum bnxt_ulp_hf_bitmask0 {
118 	BNXT_ULP_HF0_BITMASK_SVIF_INDEX          = 0x8000000000000000,
119 	BNXT_ULP_HF0_BITMASK_O_ETH_DMAC          = 0x4000000000000000,
120 	BNXT_ULP_HF0_BITMASK_O_ETH_SMAC          = 0x2000000000000000,
121 	BNXT_ULP_HF0_BITMASK_O_ETH_TYPE          = 0x1000000000000000,
122 	BNXT_ULP_HF0_BITMASK_OO_VLAN_CFI_PRI     = 0x0800000000000000,
123 	BNXT_ULP_HF0_BITMASK_OO_VLAN_VID         = 0x0400000000000000,
124 	BNXT_ULP_HF0_BITMASK_OO_VLAN_TYPE        = 0x0200000000000000,
125 	BNXT_ULP_HF0_BITMASK_OI_VLAN_CFI_PRI     = 0x0100000000000000,
126 	BNXT_ULP_HF0_BITMASK_OI_VLAN_VID         = 0x0080000000000000,
127 	BNXT_ULP_HF0_BITMASK_OI_VLAN_TYPE        = 0x0040000000000000,
128 	BNXT_ULP_HF0_BITMASK_O_IPV4_VER          = 0x0020000000000000,
129 	BNXT_ULP_HF0_BITMASK_O_IPV4_TOS          = 0x0010000000000000,
130 	BNXT_ULP_HF0_BITMASK_O_IPV4_LEN          = 0x0008000000000000,
131 	BNXT_ULP_HF0_BITMASK_O_IPV4_FRAG_ID      = 0x0004000000000000,
132 	BNXT_ULP_HF0_BITMASK_O_IPV4_FRAG_OFF     = 0x0002000000000000,
133 	BNXT_ULP_HF0_BITMASK_O_IPV4_TTL          = 0x0001000000000000,
134 	BNXT_ULP_HF0_BITMASK_O_IPV4_NEXT_PID     = 0x0000800000000000,
135 	BNXT_ULP_HF0_BITMASK_O_IPV4_CSUM         = 0x0000400000000000,
136 	BNXT_ULP_HF0_BITMASK_O_IPV4_SRC_ADDR     = 0x0000200000000000,
137 	BNXT_ULP_HF0_BITMASK_O_IPV4_DST_ADDR     = 0x0000100000000000,
138 	BNXT_ULP_HF0_BITMASK_O_UDP_SRC_PORT      = 0x0000080000000000,
139 	BNXT_ULP_HF0_BITMASK_O_UDP_DST_PORT      = 0x0000040000000000,
140 	BNXT_ULP_HF0_BITMASK_O_UDP_LENGTH        = 0x0000020000000000,
141 	BNXT_ULP_HF0_BITMASK_O_UDP_CSUM          = 0x0000010000000000
142 };
143 enum bnxt_ulp_hf_bitmask1 {
144 	BNXT_ULP_HF1_BITMASK_SVIF_INDEX          = 0x8000000000000000,
145 	BNXT_ULP_HF1_BITMASK_O_ETH_DMAC          = 0x4000000000000000,
146 	BNXT_ULP_HF1_BITMASK_O_ETH_SMAC          = 0x2000000000000000,
147 	BNXT_ULP_HF1_BITMASK_O_ETH_TYPE          = 0x1000000000000000,
148 	BNXT_ULP_HF1_BITMASK_OO_VLAN_CFI_PRI     = 0x0800000000000000,
149 	BNXT_ULP_HF1_BITMASK_OO_VLAN_VID         = 0x0400000000000000,
150 	BNXT_ULP_HF1_BITMASK_OO_VLAN_TYPE        = 0x0200000000000000,
151 	BNXT_ULP_HF1_BITMASK_OI_VLAN_CFI_PRI     = 0x0100000000000000,
152 	BNXT_ULP_HF1_BITMASK_OI_VLAN_VID         = 0x0080000000000000,
153 	BNXT_ULP_HF1_BITMASK_OI_VLAN_TYPE        = 0x0040000000000000,
154 	BNXT_ULP_HF1_BITMASK_O_IPV4_VER          = 0x0020000000000000,
155 	BNXT_ULP_HF1_BITMASK_O_IPV4_TOS          = 0x0010000000000000,
156 	BNXT_ULP_HF1_BITMASK_O_IPV4_LEN          = 0x0008000000000000,
157 	BNXT_ULP_HF1_BITMASK_O_IPV4_FRAG_ID      = 0x0004000000000000,
158 	BNXT_ULP_HF1_BITMASK_O_IPV4_FRAG_OFF     = 0x0002000000000000,
159 	BNXT_ULP_HF1_BITMASK_O_IPV4_TTL          = 0x0001000000000000,
160 	BNXT_ULP_HF1_BITMASK_O_IPV4_NEXT_PID     = 0x0000800000000000,
161 	BNXT_ULP_HF1_BITMASK_O_IPV4_CSUM         = 0x0000400000000000,
162 	BNXT_ULP_HF1_BITMASK_O_IPV4_SRC_ADDR     = 0x0000200000000000,
163 	BNXT_ULP_HF1_BITMASK_O_IPV4_DST_ADDR     = 0x0000100000000000,
164 	BNXT_ULP_HF1_BITMASK_O_UDP_SRC_PORT      = 0x0000080000000000,
165 	BNXT_ULP_HF1_BITMASK_O_UDP_DST_PORT      = 0x0000040000000000,
166 	BNXT_ULP_HF1_BITMASK_O_UDP_LENGTH        = 0x0000020000000000,
167 	BNXT_ULP_HF1_BITMASK_O_UDP_CSUM          = 0x0000010000000000
168 };
169 
170 enum bnxt_ulp_hf_bitmask2 {
171 	BNXT_ULP_HF2_BITMASK_SVIF_INDEX          = 0x8000000000000000,
172 	BNXT_ULP_HF2_BITMASK_O_ETH_DMAC          = 0x4000000000000000,
173 	BNXT_ULP_HF2_BITMASK_O_ETH_SMAC          = 0x2000000000000000,
174 	BNXT_ULP_HF2_BITMASK_O_ETH_TYPE          = 0x1000000000000000,
175 	BNXT_ULP_HF2_BITMASK_OO_VLAN_CFI_PRI     = 0x0800000000000000,
176 	BNXT_ULP_HF2_BITMASK_OO_VLAN_VID         = 0x0400000000000000,
177 	BNXT_ULP_HF2_BITMASK_OO_VLAN_TYPE        = 0x0200000000000000,
178 	BNXT_ULP_HF2_BITMASK_OI_VLAN_CFI_PRI     = 0x0100000000000000,
179 	BNXT_ULP_HF2_BITMASK_OI_VLAN_VID         = 0x0080000000000000,
180 	BNXT_ULP_HF2_BITMASK_OI_VLAN_TYPE        = 0x0040000000000000,
181 	BNXT_ULP_HF2_BITMASK_O_IPV4_VER          = 0x0020000000000000,
182 	BNXT_ULP_HF2_BITMASK_O_IPV4_TOS          = 0x0010000000000000,
183 	BNXT_ULP_HF2_BITMASK_O_IPV4_LEN          = 0x0008000000000000,
184 	BNXT_ULP_HF2_BITMASK_O_IPV4_FRAG_ID      = 0x0004000000000000,
185 	BNXT_ULP_HF2_BITMASK_O_IPV4_FRAG_OFF     = 0x0002000000000000,
186 	BNXT_ULP_HF2_BITMASK_O_IPV4_TTL          = 0x0001000000000000,
187 	BNXT_ULP_HF2_BITMASK_O_IPV4_NEXT_PID     = 0x0000800000000000,
188 	BNXT_ULP_HF2_BITMASK_O_IPV4_CSUM         = 0x0000400000000000,
189 	BNXT_ULP_HF2_BITMASK_O_IPV4_SRC_ADDR     = 0x0000200000000000,
190 	BNXT_ULP_HF2_BITMASK_O_IPV4_DST_ADDR     = 0x0000100000000000,
191 	BNXT_ULP_HF2_BITMASK_O_UDP_SRC_PORT      = 0x0000080000000000,
192 	BNXT_ULP_HF2_BITMASK_O_UDP_DST_PORT      = 0x0000040000000000,
193 	BNXT_ULP_HF2_BITMASK_O_UDP_LENGTH        = 0x0000020000000000,
194 	BNXT_ULP_HF2_BITMASK_O_UDP_CSUM          = 0x0000010000000000,
195 	BNXT_ULP_HF2_BITMASK_T_VXLAN_FLAGS       = 0x0000008000000000,
196 	BNXT_ULP_HF2_BITMASK_T_VXLAN_RSVD0       = 0x0000004000000000,
197 	BNXT_ULP_HF2_BITMASK_T_VXLAN_VNI         = 0x0000002000000000,
198 	BNXT_ULP_HF2_BITMASK_T_VXLAN_RSVD1       = 0x0000001000000000,
199 	BNXT_ULP_HF2_BITMASK_I_ETH_DMAC          = 0x0000000800000000,
200 	BNXT_ULP_HF2_BITMASK_I_ETH_SMAC          = 0x0000000400000000,
201 	BNXT_ULP_HF2_BITMASK_I_ETH_TYPE          = 0x0000000200000000,
202 	BNXT_ULP_HF2_BITMASK_IO_VLAN_CFI_PRI     = 0x0000000100000000,
203 	BNXT_ULP_HF2_BITMASK_IO_VLAN_VID         = 0x0000000080000000,
204 	BNXT_ULP_HF2_BITMASK_IO_VLAN_TYPE        = 0x0000000040000000,
205 	BNXT_ULP_HF2_BITMASK_II_VLAN_CFI_PRI     = 0x0000000020000000,
206 	BNXT_ULP_HF2_BITMASK_II_VLAN_VID         = 0x0000000010000000,
207 	BNXT_ULP_HF2_BITMASK_II_VLAN_TYPE        = 0x0000000008000000,
208 	BNXT_ULP_HF2_BITMASK_I_IPV4_VER          = 0x0000000004000000,
209 	BNXT_ULP_HF2_BITMASK_I_IPV4_TOS          = 0x0000000002000000,
210 	BNXT_ULP_HF2_BITMASK_I_IPV4_LEN          = 0x0000000001000000,
211 	BNXT_ULP_HF2_BITMASK_I_IPV4_FRAG_ID      = 0x0000000000800000,
212 	BNXT_ULP_HF2_BITMASK_I_IPV4_FRAG_OFF     = 0x0000000000400000,
213 	BNXT_ULP_HF2_BITMASK_I_IPV4_TTL          = 0x0000000000200000,
214 	BNXT_ULP_HF2_BITMASK_I_IPV4_NEXT_PID     = 0x0000000000100000,
215 	BNXT_ULP_HF2_BITMASK_I_IPV4_CSUM         = 0x0000000000080000,
216 	BNXT_ULP_HF2_BITMASK_I_IPV4_SRC_ADDR     = 0x0000000000040000,
217 	BNXT_ULP_HF2_BITMASK_I_IPV4_DST_ADDR     = 0x0000000000020000,
218 	BNXT_ULP_HF2_BITMASK_I_UDP_SRC_PORT      = 0x0000000000010000,
219 	BNXT_ULP_HF2_BITMASK_I_UDP_DST_PORT      = 0x0000000000008000,
220 	BNXT_ULP_HF2_BITMASK_I_UDP_LENGTH        = 0x0000000000004000,
221 	BNXT_ULP_HF2_BITMASK_I_UDP_CSUM          = 0x0000000000002000
222 };
223 
224 #endif
225