45b26b23691b67456b5e0de39ad1dc5ff0ee4c42
[dpdk.git] / drivers / net / bnxt / tf_core / cfa_resource_types.h
1 /*
2  * Copyright(c) 2001-2020, Broadcom. All rights reserved. The
3  * term Broadcom refers to Broadcom Inc. and/or its subsidiaries.
4  * Proprietary and Confidential Information.
5  *
6  * This source file is the property of Broadcom Corporation, and
7  * may not be copied or distributed in any isomorphic form without
8  * the prior written consent of Broadcom Corporation.
9  *
10  * DO NOT MODIFY!!! This file is automatically generated.
11  */
12
13 #ifndef _CFA_RESOURCE_TYPES_H_
14 #define _CFA_RESOURCE_TYPES_H_
15 /*
16  * This is the constant used to define invalid CFA
17  * resource types across all devices.
18  */
19 #define CFA_RESOURCE_TYPE_INVALID 65535
20
21 /* L2 Context TCAM High priority entries */
22 #define CFA_RESOURCE_TYPE_P59_L2_CTXT_TCAM_HIGH  0x0UL
23 /* L2 Context TCAM Low priority entries */
24 #define CFA_RESOURCE_TYPE_P59_L2_CTXT_TCAM_LOW   0x1UL
25 /* L2 Context REMAP high priority entries */
26 #define CFA_RESOURCE_TYPE_P59_L2_CTXT_REMAP_HIGH 0x2UL
27 /* L2 Context REMAP Low priority entries */
28 #define CFA_RESOURCE_TYPE_P59_L2_CTXT_REMAP_LOW  0x3UL
29 /* Profile Func */
30 #define CFA_RESOURCE_TYPE_P59_PROF_FUNC          0x4UL
31 /* Profile TCAM */
32 #define CFA_RESOURCE_TYPE_P59_PROF_TCAM          0x5UL
33 /* Exact Match Profile Id */
34 #define CFA_RESOURCE_TYPE_P59_EM_PROF_ID         0x6UL
35 /* Wildcard TCAM Profile Id */
36 #define CFA_RESOURCE_TYPE_P59_WC_TCAM_PROF_ID    0x7UL
37 /* Wildcard TCAM */
38 #define CFA_RESOURCE_TYPE_P59_WC_TCAM            0x8UL
39 /* Meter Profile */
40 #define CFA_RESOURCE_TYPE_P59_METER_PROF         0x9UL
41 /* Meter */
42 #define CFA_RESOURCE_TYPE_P59_METER              0xaUL
43 /* Meter */
44 #define CFA_RESOURCE_TYPE_P59_MIRROR             0xbUL
45 /* Source Properties TCAM */
46 #define CFA_RESOURCE_TYPE_P59_SP_TCAM            0xcUL
47 /* Exact Match Flexible Key Builder */
48 #define CFA_RESOURCE_TYPE_P59_EM_FKB             0xdUL
49 /* Wildcard Flexible Key Builder */
50 #define CFA_RESOURCE_TYPE_P59_WC_FKB             0xeUL
51 /* Table Scope */
52 #define CFA_RESOURCE_TYPE_P59_TBL_SCOPE          0xfUL
53 /* L2 Func */
54 #define CFA_RESOURCE_TYPE_P59_L2_FUNC            0x10UL
55 /* EPOCH 0 */
56 #define CFA_RESOURCE_TYPE_P59_EPOCH0             0x11UL
57 /* EPOCH 1 */
58 #define CFA_RESOURCE_TYPE_P59_EPOCH1             0x12UL
59 /* Metadata */
60 #define CFA_RESOURCE_TYPE_P59_METADATA           0x13UL
61 /* Connection Tracking Rule TCAM */
62 #define CFA_RESOURCE_TYPE_P59_CT_RULE_TCAM       0x14UL
63 /* Range Profile */
64 #define CFA_RESOURCE_TYPE_P59_RANGE_PROF         0x15UL
65 /* Range */
66 #define CFA_RESOURCE_TYPE_P59_RANGE              0x16UL
67 /* Link Aggrigation */
68 #define CFA_RESOURCE_TYPE_P59_LAG                0x17UL
69 /* VEB TCAM */
70 #define CFA_RESOURCE_TYPE_P59_VEB_TCAM           0x18UL
71 #define CFA_RESOURCE_TYPE_P59_LAST              CFA_RESOURCE_TYPE_P59_VEB_TCAM
72
73
74 /* Multicast Group */
75 #define CFA_RESOURCE_TYPE_P58_MCG                 0x0UL
76 /* Encap 8 byte record */
77 #define CFA_RESOURCE_TYPE_P58_ENCAP_8B            0x1UL
78 /* Encap 16 byte record */
79 #define CFA_RESOURCE_TYPE_P58_ENCAP_16B           0x2UL
80 /* Encap 64 byte record */
81 #define CFA_RESOURCE_TYPE_P58_ENCAP_64B           0x3UL
82 /* Source Property MAC */
83 #define CFA_RESOURCE_TYPE_P58_SP_MAC              0x4UL
84 /* Source Property MAC and IPv4 */
85 #define CFA_RESOURCE_TYPE_P58_SP_MAC_IPV4         0x5UL
86 /* Source Property MAC and IPv6 */
87 #define CFA_RESOURCE_TYPE_P58_SP_MAC_IPV6         0x6UL
88 /* Network Address Translation Port */
89 #define CFA_RESOURCE_TYPE_P58_NAT_PORT            0x7UL
90 /* Network Address Translation IPv4 address */
91 #define CFA_RESOURCE_TYPE_P58_NAT_IPV4            0x8UL
92 /* Meter */
93 #define CFA_RESOURCE_TYPE_P58_METER               0x9UL
94 /* Flow State */
95 #define CFA_RESOURCE_TYPE_P58_FLOW_STATE          0xaUL
96 /* Full Action Records */
97 #define CFA_RESOURCE_TYPE_P58_FULL_ACTION         0xbUL
98 /* Action Record Format 0 */
99 #define CFA_RESOURCE_TYPE_P58_FORMAT_0_ACTION     0xcUL
100 /* Action Record Ext Format 0 */
101 #define CFA_RESOURCE_TYPE_P58_EXT_FORMAT_0_ACTION 0xdUL
102 /* Action Record Format 1 */
103 #define CFA_RESOURCE_TYPE_P58_FORMAT_1_ACTION     0xeUL
104 /* Action Record Format 2 */
105 #define CFA_RESOURCE_TYPE_P58_FORMAT_2_ACTION     0xfUL
106 /* Action Record Format 3 */
107 #define CFA_RESOURCE_TYPE_P58_FORMAT_3_ACTION     0x10UL
108 /* Action Record Format 4 */
109 #define CFA_RESOURCE_TYPE_P58_FORMAT_4_ACTION     0x11UL
110 /* Action Record Format 5 */
111 #define CFA_RESOURCE_TYPE_P58_FORMAT_5_ACTION     0x12UL
112 /* Action Record Format 6 */
113 #define CFA_RESOURCE_TYPE_P58_FORMAT_6_ACTION     0x13UL
114 /* L2 Context TCAM High priority entries */
115 #define CFA_RESOURCE_TYPE_P58_L2_CTXT_TCAM_HIGH   0x14UL
116 /* L2 Context TCAM Low priority entries */
117 #define CFA_RESOURCE_TYPE_P58_L2_CTXT_TCAM_LOW    0x15UL
118 /* L2 Context REMAP high priority entries */
119 #define CFA_RESOURCE_TYPE_P58_L2_CTXT_REMAP_HIGH  0x16UL
120 /* L2 Context REMAP Low priority entries */
121 #define CFA_RESOURCE_TYPE_P58_L2_CTXT_REMAP_LOW   0x17UL
122 /* Profile Func */
123 #define CFA_RESOURCE_TYPE_P58_PROF_FUNC           0x18UL
124 /* Profile TCAM */
125 #define CFA_RESOURCE_TYPE_P58_PROF_TCAM           0x19UL
126 /* Exact Match Profile Id */
127 #define CFA_RESOURCE_TYPE_P58_EM_PROF_ID          0x1aUL
128 /* Wildcard Profile Id */
129 #define CFA_RESOURCE_TYPE_P58_WC_TCAM_PROF_ID     0x1bUL
130 /* Exact Match Record */
131 #define CFA_RESOURCE_TYPE_P58_EM_REC              0x1cUL
132 /* Wildcard TCAM */
133 #define CFA_RESOURCE_TYPE_P58_WC_TCAM             0x1dUL
134 /* Meter profile */
135 #define CFA_RESOURCE_TYPE_P58_METER_PROF          0x1eUL
136 /* Meter */
137 #define CFA_RESOURCE_TYPE_P58_MIRROR              0x1fUL
138 /* Source Property TCAM */
139 #define CFA_RESOURCE_TYPE_P58_SP_TCAM             0x20UL
140 /* Exact Match Flexible Key Builder */
141 #define CFA_RESOURCE_TYPE_P58_EM_FKB              0x21UL
142 /* Wildcard Flexible Key Builder */
143 #define CFA_RESOURCE_TYPE_P58_WC_FKB              0x22UL
144 /* VEB TCAM */
145 #define CFA_RESOURCE_TYPE_P58_VEB_TCAM            0x23UL
146 #define CFA_RESOURCE_TYPE_P58_LAST               CFA_RESOURCE_TYPE_P58_VEB_TCAM
147
148
149 /* Multicast Group */
150 #define CFA_RESOURCE_TYPE_P45_MCG                 0x0UL
151 /* Encap 8 byte record */
152 #define CFA_RESOURCE_TYPE_P45_ENCAP_8B            0x1UL
153 /* Encap 16 byte record */
154 #define CFA_RESOURCE_TYPE_P45_ENCAP_16B           0x2UL
155 /* Encap 64 byte record */
156 #define CFA_RESOURCE_TYPE_P45_ENCAP_64B           0x3UL
157 /* Source Property MAC */
158 #define CFA_RESOURCE_TYPE_P45_SP_MAC              0x4UL
159 /* Source Property MAC and IPv4 */
160 #define CFA_RESOURCE_TYPE_P45_SP_MAC_IPV4         0x5UL
161 /* Source Property MAC and IPv6 */
162 #define CFA_RESOURCE_TYPE_P45_SP_MAC_IPV6         0x6UL
163 /* 64B Counters */
164 #define CFA_RESOURCE_TYPE_P45_COUNTER_64B         0x7UL
165 /* Network Address Translation Port */
166 #define CFA_RESOURCE_TYPE_P45_NAT_PORT            0x8UL
167 /* Network Address Translation IPv4 address */
168 #define CFA_RESOURCE_TYPE_P45_NAT_IPV4            0x9UL
169 /* Meter */
170 #define CFA_RESOURCE_TYPE_P45_METER               0xaUL
171 /* Flow State */
172 #define CFA_RESOURCE_TYPE_P45_FLOW_STATE          0xbUL
173 /* Full Action Records */
174 #define CFA_RESOURCE_TYPE_P45_FULL_ACTION         0xcUL
175 /* Action Record Format 0 */
176 #define CFA_RESOURCE_TYPE_P45_FORMAT_0_ACTION     0xdUL
177 /* Action Record Ext Format 0 */
178 #define CFA_RESOURCE_TYPE_P45_EXT_FORMAT_0_ACTION 0xeUL
179 /* Action Record Format 1 */
180 #define CFA_RESOURCE_TYPE_P45_FORMAT_1_ACTION     0xfUL
181 /* Action Record Format 2 */
182 #define CFA_RESOURCE_TYPE_P45_FORMAT_2_ACTION     0x10UL
183 /* Action Record Format 3 */
184 #define CFA_RESOURCE_TYPE_P45_FORMAT_3_ACTION     0x11UL
185 /* Action Record Format 4 */
186 #define CFA_RESOURCE_TYPE_P45_FORMAT_4_ACTION     0x12UL
187 /* Action Record Format 5 */
188 #define CFA_RESOURCE_TYPE_P45_FORMAT_5_ACTION     0x13UL
189 /* Action Record Format 6 */
190 #define CFA_RESOURCE_TYPE_P45_FORMAT_6_ACTION     0x14UL
191 /* L2 Context TCAM High priority entries */
192 #define CFA_RESOURCE_TYPE_P45_L2_CTXT_TCAM_HIGH   0x15UL
193 /* L2 Context TCAM Low priority entries */
194 #define CFA_RESOURCE_TYPE_P45_L2_CTXT_TCAM_LOW    0x16UL
195 /* L2 Context REMAP high priority entries */
196 #define CFA_RESOURCE_TYPE_P45_L2_CTXT_REMAP_HIGH  0x17UL
197 /* L2 Context REMAP Low priority entries */
198 #define CFA_RESOURCE_TYPE_P45_L2_CTXT_REMAP_LOW   0x18UL
199 /* Profile Func */
200 #define CFA_RESOURCE_TYPE_P45_PROF_FUNC           0x19UL
201 /* Profile TCAM */
202 #define CFA_RESOURCE_TYPE_P45_PROF_TCAM           0x1aUL
203 /* Exact Match Profile Id */
204 #define CFA_RESOURCE_TYPE_P45_EM_PROF_ID          0x1bUL
205 /* Exact Match Record */
206 #define CFA_RESOURCE_TYPE_P45_EM_REC              0x1cUL
207 /* Wildcard Profile Id */
208 #define CFA_RESOURCE_TYPE_P45_WC_TCAM_PROF_ID     0x1dUL
209 /* Wildcard TCAM */
210 #define CFA_RESOURCE_TYPE_P45_WC_TCAM             0x1eUL
211 /* Meter profile */
212 #define CFA_RESOURCE_TYPE_P45_METER_PROF          0x1fUL
213 /* Meter */
214 #define CFA_RESOURCE_TYPE_P45_MIRROR              0x20UL
215 /* Source Property TCAM */
216 #define CFA_RESOURCE_TYPE_P45_SP_TCAM             0x21UL
217 /* VEB TCAM */
218 #define CFA_RESOURCE_TYPE_P45_VEB_TCAM            0x22UL
219 /* Table Scope */
220 #define CFA_RESOURCE_TYPE_P45_TBL_SCOPE           0x23UL
221 #define CFA_RESOURCE_TYPE_P45_LAST               CFA_RESOURCE_TYPE_P45_TBL_SCOPE
222
223
224 /* Multicast Group */
225 #define CFA_RESOURCE_TYPE_P4_MCG                 0x0UL
226 /* Encap 8 byte record */
227 #define CFA_RESOURCE_TYPE_P4_ENCAP_8B            0x1UL
228 /* Encap 16 byte record */
229 #define CFA_RESOURCE_TYPE_P4_ENCAP_16B           0x2UL
230 /* Encap 64 byte record */
231 #define CFA_RESOURCE_TYPE_P4_ENCAP_64B           0x3UL
232 /* Source Property MAC */
233 #define CFA_RESOURCE_TYPE_P4_SP_MAC              0x4UL
234 /* Source Property MAC and IPv4 */
235 #define CFA_RESOURCE_TYPE_P4_SP_MAC_IPV4         0x5UL
236 /* Source Property MAC and IPv6 */
237 #define CFA_RESOURCE_TYPE_P4_SP_MAC_IPV6         0x6UL
238 /* 64B Counters */
239 #define CFA_RESOURCE_TYPE_P4_COUNTER_64B         0x7UL
240 /* Network Address Translation Port */
241 #define CFA_RESOURCE_TYPE_P4_NAT_PORT            0x8UL
242 /* Network Address Translation IPv4 address */
243 #define CFA_RESOURCE_TYPE_P4_NAT_IPV4            0x9UL
244 /* Meter */
245 #define CFA_RESOURCE_TYPE_P4_METER               0xaUL
246 /* Flow State */
247 #define CFA_RESOURCE_TYPE_P4_FLOW_STATE          0xbUL
248 /* Full Action Records */
249 #define CFA_RESOURCE_TYPE_P4_FULL_ACTION         0xcUL
250 /* Action Record Format 0 */
251 #define CFA_RESOURCE_TYPE_P4_FORMAT_0_ACTION     0xdUL
252 /* Action Record Ext Format 0 */
253 #define CFA_RESOURCE_TYPE_P4_EXT_FORMAT_0_ACTION 0xeUL
254 /* Action Record Format 1 */
255 #define CFA_RESOURCE_TYPE_P4_FORMAT_1_ACTION     0xfUL
256 /* Action Record Format 2 */
257 #define CFA_RESOURCE_TYPE_P4_FORMAT_2_ACTION     0x10UL
258 /* Action Record Format 3 */
259 #define CFA_RESOURCE_TYPE_P4_FORMAT_3_ACTION     0x11UL
260 /* Action Record Format 4 */
261 #define CFA_RESOURCE_TYPE_P4_FORMAT_4_ACTION     0x12UL
262 /* Action Record Format 5 */
263 #define CFA_RESOURCE_TYPE_P4_FORMAT_5_ACTION     0x13UL
264 /* Action Record Format 6 */
265 #define CFA_RESOURCE_TYPE_P4_FORMAT_6_ACTION     0x14UL
266 /* L2 Context TCAM High priority entries */
267 #define CFA_RESOURCE_TYPE_P4_L2_CTXT_TCAM_HIGH   0x15UL
268 /* L2 Context TCAM Low priority entries */
269 #define CFA_RESOURCE_TYPE_P4_L2_CTXT_TCAM_LOW    0x16UL
270 /* L2 Context REMAP high priority entries */
271 #define CFA_RESOURCE_TYPE_P4_L2_CTXT_REMAP_HIGH  0x17UL
272 /* L2 Context REMAP Low priority entries */
273 #define CFA_RESOURCE_TYPE_P4_L2_CTXT_REMAP_LOW   0x18UL
274 /* Profile Func */
275 #define CFA_RESOURCE_TYPE_P4_PROF_FUNC           0x19UL
276 /* Profile TCAM */
277 #define CFA_RESOURCE_TYPE_P4_PROF_TCAM           0x1aUL
278 /* Exact Match Profile Id */
279 #define CFA_RESOURCE_TYPE_P4_EM_PROF_ID          0x1bUL
280 /* Exact Match Record */
281 #define CFA_RESOURCE_TYPE_P4_EM_REC              0x1cUL
282 /* Wildcard Profile Id */
283 #define CFA_RESOURCE_TYPE_P4_WC_TCAM_PROF_ID     0x1dUL
284 /* Wildcard TCAM */
285 #define CFA_RESOURCE_TYPE_P4_WC_TCAM             0x1eUL
286 /* Meter profile */
287 #define CFA_RESOURCE_TYPE_P4_METER_PROF          0x1fUL
288 /* Meter */
289 #define CFA_RESOURCE_TYPE_P4_MIRROR              0x20UL
290 /* Source Property TCAM */
291 #define CFA_RESOURCE_TYPE_P4_SP_TCAM             0x21UL
292 /* Table Scope */
293 #define CFA_RESOURCE_TYPE_P4_TBL_SCOPE           0x22UL
294 #define CFA_RESOURCE_TYPE_P4_LAST               CFA_RESOURCE_TYPE_P4_TBL_SCOPE
295
296
297 #endif /* _CFA_RESOURCE_TYPES_H_ */