net/bnxt: align CFA resources with RM
[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 */
22 #define CFA_RESOURCE_TYPE_P59_L2_CTXT_TCAM    0x0UL
23 /* L2 Context REMAP */
24 #define CFA_RESOURCE_TYPE_P59_L2_CTXT_REMAP   0x1UL
25 /* Profile Func */
26 #define CFA_RESOURCE_TYPE_P59_PROF_FUNC       0x2UL
27 /* Profile TCAM */
28 #define CFA_RESOURCE_TYPE_P59_PROF_TCAM       0x3UL
29 /* Exact Match Profile Id */
30 #define CFA_RESOURCE_TYPE_P59_EM_PROF_ID      0x4UL
31 /* Wildcard TCAM Profile Id */
32 #define CFA_RESOURCE_TYPE_P59_WC_TCAM_PROF_ID 0x5UL
33 /* Wildcard TCAM */
34 #define CFA_RESOURCE_TYPE_P59_WC_TCAM         0x6UL
35 /* Meter Profile */
36 #define CFA_RESOURCE_TYPE_P59_METER_PROF      0x7UL
37 /* Meter */
38 #define CFA_RESOURCE_TYPE_P59_METER           0x8UL
39 /* Meter */
40 #define CFA_RESOURCE_TYPE_P59_MIRROR          0x9UL
41 /* Source Properties TCAM */
42 #define CFA_RESOURCE_TYPE_P59_SP_TCAM         0xaUL
43 /* Exact Match Flexible Key Builder */
44 #define CFA_RESOURCE_TYPE_P59_EM_FKB          0xbUL
45 /* Wildcard Flexible Key Builder */
46 #define CFA_RESOURCE_TYPE_P59_WC_FKB          0xcUL
47 /* Table Scope */
48 #define CFA_RESOURCE_TYPE_P59_TBL_SCOPE       0xdUL
49 /* L2 Func */
50 #define CFA_RESOURCE_TYPE_P59_L2_FUNC         0xeUL
51 /* EPOCH 0 */
52 #define CFA_RESOURCE_TYPE_P59_EPOCH0          0xfUL
53 /* EPOCH 1 */
54 #define CFA_RESOURCE_TYPE_P59_EPOCH1          0x10UL
55 /* Metadata */
56 #define CFA_RESOURCE_TYPE_P59_METADATA        0x11UL
57 /* Connection Tracking Rule TCAM */
58 #define CFA_RESOURCE_TYPE_P59_CT_RULE_TCAM    0x12UL
59 /* Range Profile */
60 #define CFA_RESOURCE_TYPE_P59_RANGE_PROF      0x13UL
61 /* Range */
62 #define CFA_RESOURCE_TYPE_P59_RANGE           0x14UL
63 /* Link Aggrigation */
64 #define CFA_RESOURCE_TYPE_P59_LAG             0x15UL
65 /* VEB TCAM */
66 #define CFA_RESOURCE_TYPE_P59_VEB_TCAM        0x16UL
67 #define CFA_RESOURCE_TYPE_P59_LAST           CFA_RESOURCE_TYPE_P59_VEB_TCAM
68
69
70 /* Multicast Group */
71 #define CFA_RESOURCE_TYPE_P58_MCG                 0x0UL
72 /* Encap 8 byte record */
73 #define CFA_RESOURCE_TYPE_P58_ENCAP_8B            0x1UL
74 /* Encap 16 byte record */
75 #define CFA_RESOURCE_TYPE_P58_ENCAP_16B           0x2UL
76 /* Encap 64 byte record */
77 #define CFA_RESOURCE_TYPE_P58_ENCAP_64B           0x3UL
78 /* Source Property MAC */
79 #define CFA_RESOURCE_TYPE_P58_SP_MAC              0x4UL
80 /* Source Property MAC and IPv4 */
81 #define CFA_RESOURCE_TYPE_P58_SP_MAC_IPV4         0x5UL
82 /* Source Property MAC and IPv6 */
83 #define CFA_RESOURCE_TYPE_P58_SP_MAC_IPV6         0x6UL
84 /* Network Address Translation Source Port */
85 #define CFA_RESOURCE_TYPE_P58_NAT_SPORT           0x7UL
86 /* Network Address Translation Destination Port */
87 #define CFA_RESOURCE_TYPE_P58_NAT_DPORT           0x8UL
88 /* Network Address Translation Source IPv4 address */
89 #define CFA_RESOURCE_TYPE_P58_NAT_S_IPV4          0x9UL
90 /* Network Address Translation Destination IPv4 address */
91 #define CFA_RESOURCE_TYPE_P58_NAT_D_IPV4          0xaUL
92 /* Meter */
93 #define CFA_RESOURCE_TYPE_P58_METER               0xbUL
94 /* Flow State */
95 #define CFA_RESOURCE_TYPE_P58_FLOW_STATE          0xcUL
96 /* Full Action Records */
97 #define CFA_RESOURCE_TYPE_P58_FULL_ACTION         0xdUL
98 /* Action Record Format 0 */
99 #define CFA_RESOURCE_TYPE_P58_FORMAT_0_ACTION     0xeUL
100 /* Action Record Ext Format 0 */
101 #define CFA_RESOURCE_TYPE_P58_EXT_FORMAT_0_ACTION 0xfUL
102 /* Action Record Format 1 */
103 #define CFA_RESOURCE_TYPE_P58_FORMAT_1_ACTION     0x10UL
104 /* Action Record Format 2 */
105 #define CFA_RESOURCE_TYPE_P58_FORMAT_2_ACTION     0x11UL
106 /* Action Record Format 3 */
107 #define CFA_RESOURCE_TYPE_P58_FORMAT_3_ACTION     0x12UL
108 /* Action Record Format 4 */
109 #define CFA_RESOURCE_TYPE_P58_FORMAT_4_ACTION     0x13UL
110 /* Action Record Format 5 */
111 #define CFA_RESOURCE_TYPE_P58_FORMAT_5_ACTION     0x14UL
112 /* Action Record Format 6 */
113 #define CFA_RESOURCE_TYPE_P58_FORMAT_6_ACTION     0x15UL
114 /* L2 Context TCAM */
115 #define CFA_RESOURCE_TYPE_P58_L2_CTXT_TCAM        0x16UL
116 /* L2 Context REMAP */
117 #define CFA_RESOURCE_TYPE_P58_L2_CTXT_REMAP       0x17UL
118 /* Profile Func */
119 #define CFA_RESOURCE_TYPE_P58_PROF_FUNC           0x18UL
120 /* Profile TCAM */
121 #define CFA_RESOURCE_TYPE_P58_PROF_TCAM           0x19UL
122 /* Exact Match Profile Id */
123 #define CFA_RESOURCE_TYPE_P58_EM_PROF_ID          0x1aUL
124 /* Wildcard Profile Id */
125 #define CFA_RESOURCE_TYPE_P58_WC_TCAM_PROF_ID     0x1bUL
126 /* Exact Match Record */
127 #define CFA_RESOURCE_TYPE_P58_EM_REC              0x1cUL
128 /* Wildcard TCAM */
129 #define CFA_RESOURCE_TYPE_P58_WC_TCAM             0x1dUL
130 /* Meter profile */
131 #define CFA_RESOURCE_TYPE_P58_METER_PROF          0x1eUL
132 /* Meter */
133 #define CFA_RESOURCE_TYPE_P58_MIRROR              0x1fUL
134 /* Source Property TCAM */
135 #define CFA_RESOURCE_TYPE_P58_SP_TCAM             0x20UL
136 /* Exact Match Flexible Key Builder */
137 #define CFA_RESOURCE_TYPE_P58_EM_FKB              0x21UL
138 /* Wildcard Flexible Key Builder */
139 #define CFA_RESOURCE_TYPE_P58_WC_FKB              0x22UL
140 /* VEB TCAM */
141 #define CFA_RESOURCE_TYPE_P58_VEB_TCAM            0x23UL
142 #define CFA_RESOURCE_TYPE_P58_LAST               CFA_RESOURCE_TYPE_P58_VEB_TCAM
143
144
145 /* Multicast Group */
146 #define CFA_RESOURCE_TYPE_P45_MCG                 0x0UL
147 /* Encap 8 byte record */
148 #define CFA_RESOURCE_TYPE_P45_ENCAP_8B            0x1UL
149 /* Encap 16 byte record */
150 #define CFA_RESOURCE_TYPE_P45_ENCAP_16B           0x2UL
151 /* Encap 64 byte record */
152 #define CFA_RESOURCE_TYPE_P45_ENCAP_64B           0x3UL
153 /* Source Property MAC */
154 #define CFA_RESOURCE_TYPE_P45_SP_MAC              0x4UL
155 /* Source Property MAC and IPv4 */
156 #define CFA_RESOURCE_TYPE_P45_SP_MAC_IPV4         0x5UL
157 /* Source Property MAC and IPv6 */
158 #define CFA_RESOURCE_TYPE_P45_SP_MAC_IPV6         0x6UL
159 /* 64B Counters */
160 #define CFA_RESOURCE_TYPE_P45_COUNTER_64B         0x7UL
161 /* Network Address Translation Source Port */
162 #define CFA_RESOURCE_TYPE_P45_NAT_SPORT           0x8UL
163 /* Network Address Translation Destination Port */
164 #define CFA_RESOURCE_TYPE_P45_NAT_DPORT           0x9UL
165 /* Network Address Translation Source IPv4 address */
166 #define CFA_RESOURCE_TYPE_P45_NAT_S_IPV4          0xaUL
167 /* Network Address Translation Destination IPv4 address */
168 #define CFA_RESOURCE_TYPE_P45_NAT_D_IPV4          0xbUL
169 /* Meter */
170 #define CFA_RESOURCE_TYPE_P45_METER               0xcUL
171 /* Flow State */
172 #define CFA_RESOURCE_TYPE_P45_FLOW_STATE          0xdUL
173 /* Full Action Records */
174 #define CFA_RESOURCE_TYPE_P45_FULL_ACTION         0xeUL
175 /* Action Record Format 0 */
176 #define CFA_RESOURCE_TYPE_P45_FORMAT_0_ACTION     0xfUL
177 /* Action Record Ext Format 0 */
178 #define CFA_RESOURCE_TYPE_P45_EXT_FORMAT_0_ACTION 0x10UL
179 /* Action Record Format 1 */
180 #define CFA_RESOURCE_TYPE_P45_FORMAT_1_ACTION     0x11UL
181 /* Action Record Format 2 */
182 #define CFA_RESOURCE_TYPE_P45_FORMAT_2_ACTION     0x12UL
183 /* Action Record Format 3 */
184 #define CFA_RESOURCE_TYPE_P45_FORMAT_3_ACTION     0x13UL
185 /* Action Record Format 4 */
186 #define CFA_RESOURCE_TYPE_P45_FORMAT_4_ACTION     0x14UL
187 /* Action Record Format 5 */
188 #define CFA_RESOURCE_TYPE_P45_FORMAT_5_ACTION     0x15UL
189 /* Action Record Format 6 */
190 #define CFA_RESOURCE_TYPE_P45_FORMAT_6_ACTION     0x16UL
191 /* L2 Context TCAM */
192 #define CFA_RESOURCE_TYPE_P45_L2_CTXT_TCAM        0x17UL
193 /* L2 Context REMAP */
194 #define CFA_RESOURCE_TYPE_P45_L2_CTXT_REMAP       0x18UL
195 /* Profile Func */
196 #define CFA_RESOURCE_TYPE_P45_PROF_FUNC           0x19UL
197 /* Profile TCAM */
198 #define CFA_RESOURCE_TYPE_P45_PROF_TCAM           0x1aUL
199 /* Exact Match Profile Id */
200 #define CFA_RESOURCE_TYPE_P45_EM_PROF_ID          0x1bUL
201 /* Exact Match Record */
202 #define CFA_RESOURCE_TYPE_P45_EM_REC              0x1cUL
203 /* Wildcard Profile Id */
204 #define CFA_RESOURCE_TYPE_P45_WC_TCAM_PROF_ID     0x1dUL
205 /* Wildcard TCAM */
206 #define CFA_RESOURCE_TYPE_P45_WC_TCAM             0x1eUL
207 /* Meter profile */
208 #define CFA_RESOURCE_TYPE_P45_METER_PROF          0x1fUL
209 /* Meter */
210 #define CFA_RESOURCE_TYPE_P45_MIRROR              0x20UL
211 /* Source Property TCAM */
212 #define CFA_RESOURCE_TYPE_P45_SP_TCAM             0x21UL
213 /* VEB TCAM */
214 #define CFA_RESOURCE_TYPE_P45_VEB_TCAM            0x22UL
215 /* Table Scope */
216 #define CFA_RESOURCE_TYPE_P45_TBL_SCOPE           0x23UL
217 #define CFA_RESOURCE_TYPE_P45_LAST               CFA_RESOURCE_TYPE_P45_TBL_SCOPE
218
219
220 /* Multicast Group */
221 #define CFA_RESOURCE_TYPE_P4_MCG                 0x0UL
222 /* Encap 8 byte record */
223 #define CFA_RESOURCE_TYPE_P4_ENCAP_8B            0x1UL
224 /* Encap 16 byte record */
225 #define CFA_RESOURCE_TYPE_P4_ENCAP_16B           0x2UL
226 /* Encap 64 byte record */
227 #define CFA_RESOURCE_TYPE_P4_ENCAP_64B           0x3UL
228 /* Source Property MAC */
229 #define CFA_RESOURCE_TYPE_P4_SP_MAC              0x4UL
230 /* Source Property MAC and IPv4 */
231 #define CFA_RESOURCE_TYPE_P4_SP_MAC_IPV4         0x5UL
232 /* Source Property MAC and IPv6 */
233 #define CFA_RESOURCE_TYPE_P4_SP_MAC_IPV6         0x6UL
234 /* 64B Counters */
235 #define CFA_RESOURCE_TYPE_P4_COUNTER_64B         0x7UL
236 /* Network Address Translation Source Port */
237 #define CFA_RESOURCE_TYPE_P4_NAT_SPORT           0x8UL
238 /* Network Address Translation Destination Port */
239 #define CFA_RESOURCE_TYPE_P4_NAT_DPORT           0x9UL
240 /* Network Address Translation Source IPv4 address */
241 #define CFA_RESOURCE_TYPE_P4_NAT_S_IPV4          0xaUL
242 /* Network Address Translation Destination IPv4 address */
243 #define CFA_RESOURCE_TYPE_P4_NAT_D_IPV4          0xbUL
244 /* Meter */
245 #define CFA_RESOURCE_TYPE_P4_METER               0xcUL
246 /* Flow State */
247 #define CFA_RESOURCE_TYPE_P4_FLOW_STATE          0xdUL
248 /* Full Action Records */
249 #define CFA_RESOURCE_TYPE_P4_FULL_ACTION         0xeUL
250 /* Action Record Format 0 */
251 #define CFA_RESOURCE_TYPE_P4_FORMAT_0_ACTION     0xfUL
252 /* Action Record Ext Format 0 */
253 #define CFA_RESOURCE_TYPE_P4_EXT_FORMAT_0_ACTION 0x10UL
254 /* Action Record Format 1 */
255 #define CFA_RESOURCE_TYPE_P4_FORMAT_1_ACTION     0x11UL
256 /* Action Record Format 2 */
257 #define CFA_RESOURCE_TYPE_P4_FORMAT_2_ACTION     0x12UL
258 /* Action Record Format 3 */
259 #define CFA_RESOURCE_TYPE_P4_FORMAT_3_ACTION     0x13UL
260 /* Action Record Format 4 */
261 #define CFA_RESOURCE_TYPE_P4_FORMAT_4_ACTION     0x14UL
262 /* Action Record Format 5 */
263 #define CFA_RESOURCE_TYPE_P4_FORMAT_5_ACTION     0x15UL
264 /* Action Record Format 6 */
265 #define CFA_RESOURCE_TYPE_P4_FORMAT_6_ACTION     0x16UL
266 /* L2 Context TCAM */
267 #define CFA_RESOURCE_TYPE_P4_L2_CTXT_TCAM        0x17UL
268 /* L2 Context REMAP */
269 #define CFA_RESOURCE_TYPE_P4_L2_CTXT_REMAP       0x18UL
270 /* Profile Func */
271 #define CFA_RESOURCE_TYPE_P4_PROF_FUNC           0x19UL
272 /* Profile TCAM */
273 #define CFA_RESOURCE_TYPE_P4_PROF_TCAM           0x1aUL
274 /* Exact Match Profile Id */
275 #define CFA_RESOURCE_TYPE_P4_EM_PROF_ID          0x1bUL
276 /* Exact Match Record */
277 #define CFA_RESOURCE_TYPE_P4_EM_REC              0x1cUL
278 /* Wildcard Profile Id */
279 #define CFA_RESOURCE_TYPE_P4_WC_TCAM_PROF_ID     0x1dUL
280 /* Wildcard TCAM */
281 #define CFA_RESOURCE_TYPE_P4_WC_TCAM             0x1eUL
282 /* Meter profile */
283 #define CFA_RESOURCE_TYPE_P4_METER_PROF          0x1fUL
284 /* Meter */
285 #define CFA_RESOURCE_TYPE_P4_MIRROR              0x20UL
286 /* Source Property TCAM */
287 #define CFA_RESOURCE_TYPE_P4_SP_TCAM             0x21UL
288 /* Table Scope */
289 #define CFA_RESOURCE_TYPE_P4_TBL_SCOPE           0x22UL
290 #define CFA_RESOURCE_TYPE_P4_LAST               CFA_RESOURCE_TYPE_P4_TBL_SCOPE
291
292
293 #endif /* _CFA_RESOURCE_TYPES_H_ */