1 /****************************************************************************
2  ****************************************************************************
3  ***
4  ***   This header was automatically generated from a Linux kernel header
5  ***   of the same name, to make information necessary for userspace to
6  ***   call into the kernel available to libc.  It contains only constants,
7  ***   structures, and macros generated from the original header, and thus,
8  ***   contains no copyrightable information.
9  ***
10  ***   To edit the content of this header, modify the corresponding
11  ***   source file (e.g. under external/kernel-headers/original/) then
12  ***   run bionic/libc/kernel/tools/update_all.py
13  ***
14  ***   Any manual change here will be lost the next time this script will
15  ***   be run. You've been warned!
16  ***
17  ****************************************************************************
18  ****************************************************************************/
19 #ifndef __LINUX_DCBNL_H__
20 #define __LINUX_DCBNL_H__
21 #include <linux/types.h>
22 #define IEEE_8021QAZ_MAX_TCS 8
23 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
24 #define IEEE_8021QAZ_TSA_STRICT 0
25 #define IEEE_8021QAZ_TSA_CB_SHAPER 1
26 #define IEEE_8021QAZ_TSA_ETS 2
27 #define IEEE_8021QAZ_TSA_VENDOR 255
28 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
29 struct ieee_ets {
30   __u8 willing;
31   __u8 ets_cap;
32   __u8 cbs;
33 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
34   __u8 tc_tx_bw[IEEE_8021QAZ_MAX_TCS];
35   __u8 tc_rx_bw[IEEE_8021QAZ_MAX_TCS];
36   __u8 tc_tsa[IEEE_8021QAZ_MAX_TCS];
37   __u8 prio_tc[IEEE_8021QAZ_MAX_TCS];
38 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
39   __u8 tc_reco_bw[IEEE_8021QAZ_MAX_TCS];
40   __u8 tc_reco_tsa[IEEE_8021QAZ_MAX_TCS];
41   __u8 reco_prio_tc[IEEE_8021QAZ_MAX_TCS];
42 };
43 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
44 struct ieee_maxrate {
45   __u64 tc_maxrate[IEEE_8021QAZ_MAX_TCS];
46 };
47 struct ieee_pfc {
48 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
49   __u8 pfc_cap;
50   __u8 pfc_en;
51   __u8 mbc;
52   __u16 delay;
53 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
54   __u64 requests[IEEE_8021QAZ_MAX_TCS];
55   __u64 indications[IEEE_8021QAZ_MAX_TCS];
56 };
57 #define CEE_DCBX_MAX_PGS 8
58 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
59 #define CEE_DCBX_MAX_PRIO 8
60 struct cee_pg {
61   __u8 willing;
62   __u8 error;
63 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
64   __u8 pg_en;
65   __u8 tcs_supported;
66   __u8 pg_bw[CEE_DCBX_MAX_PGS];
67   __u8 prio_pg[CEE_DCBX_MAX_PGS];
68 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
69 };
70 struct cee_pfc {
71   __u8 willing;
72   __u8 error;
73 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
74   __u8 pfc_en;
75   __u8 tcs_supported;
76 };
77 #define IEEE_8021QAZ_APP_SEL_ETHERTYPE 1
78 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
79 #define IEEE_8021QAZ_APP_SEL_STREAM 2
80 #define IEEE_8021QAZ_APP_SEL_DGRAM 3
81 #define IEEE_8021QAZ_APP_SEL_ANY 4
82 struct dcb_app {
83 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
84   __u8 selector;
85   __u8 priority;
86   __u16 protocol;
87 };
88 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
89 struct dcb_peer_app_info {
90   __u8 willing;
91   __u8 error;
92 };
93 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
94 struct dcbmsg {
95   __u8 dcb_family;
96   __u8 cmd;
97   __u16 dcb_pad;
98 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
99 };
100 enum dcbnl_commands {
101   DCB_CMD_UNDEFINED,
102   DCB_CMD_GSTATE,
103 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
104   DCB_CMD_SSTATE,
105   DCB_CMD_PGTX_GCFG,
106   DCB_CMD_PGTX_SCFG,
107   DCB_CMD_PGRX_GCFG,
108 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
109   DCB_CMD_PGRX_SCFG,
110   DCB_CMD_PFC_GCFG,
111   DCB_CMD_PFC_SCFG,
112   DCB_CMD_SET_ALL,
113 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
114   DCB_CMD_GPERM_HWADDR,
115   DCB_CMD_GCAP,
116   DCB_CMD_GNUMTCS,
117   DCB_CMD_SNUMTCS,
118 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
119   DCB_CMD_PFC_GSTATE,
120   DCB_CMD_PFC_SSTATE,
121   DCB_CMD_BCN_GCFG,
122   DCB_CMD_BCN_SCFG,
123 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
124   DCB_CMD_GAPP,
125   DCB_CMD_SAPP,
126   DCB_CMD_IEEE_SET,
127   DCB_CMD_IEEE_GET,
128 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
129   DCB_CMD_GDCBX,
130   DCB_CMD_SDCBX,
131   DCB_CMD_GFEATCFG,
132   DCB_CMD_SFEATCFG,
133 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
134   DCB_CMD_CEE_GET,
135   DCB_CMD_IEEE_DEL,
136   __DCB_CMD_ENUM_MAX,
137   DCB_CMD_MAX = __DCB_CMD_ENUM_MAX - 1,
138 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
139 };
140 enum dcbnl_attrs {
141   DCB_ATTR_UNDEFINED,
142   DCB_ATTR_IFNAME,
143 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
144   DCB_ATTR_STATE,
145   DCB_ATTR_PFC_STATE,
146   DCB_ATTR_PFC_CFG,
147   DCB_ATTR_NUM_TC,
148 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
149   DCB_ATTR_PG_CFG,
150   DCB_ATTR_SET_ALL,
151   DCB_ATTR_PERM_HWADDR,
152   DCB_ATTR_CAP,
153 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
154   DCB_ATTR_NUMTCS,
155   DCB_ATTR_BCN,
156   DCB_ATTR_APP,
157   DCB_ATTR_IEEE,
158 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
159   DCB_ATTR_DCBX,
160   DCB_ATTR_FEATCFG,
161   DCB_ATTR_CEE,
162   __DCB_ATTR_ENUM_MAX,
163 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
164   DCB_ATTR_MAX = __DCB_ATTR_ENUM_MAX - 1,
165 };
166 enum ieee_attrs {
167   DCB_ATTR_IEEE_UNSPEC,
168 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
169   DCB_ATTR_IEEE_ETS,
170   DCB_ATTR_IEEE_PFC,
171   DCB_ATTR_IEEE_APP_TABLE,
172   DCB_ATTR_IEEE_PEER_ETS,
173 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
174   DCB_ATTR_IEEE_PEER_PFC,
175   DCB_ATTR_IEEE_PEER_APP,
176   DCB_ATTR_IEEE_MAXRATE,
177   __DCB_ATTR_IEEE_MAX
178 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
179 };
180 #define DCB_ATTR_IEEE_MAX (__DCB_ATTR_IEEE_MAX - 1)
181 enum ieee_attrs_app {
182   DCB_ATTR_IEEE_APP_UNSPEC,
183 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
184   DCB_ATTR_IEEE_APP,
185   __DCB_ATTR_IEEE_APP_MAX
186 };
187 #define DCB_ATTR_IEEE_APP_MAX (__DCB_ATTR_IEEE_APP_MAX - 1)
188 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
189 enum cee_attrs {
190   DCB_ATTR_CEE_UNSPEC,
191   DCB_ATTR_CEE_PEER_PG,
192   DCB_ATTR_CEE_PEER_PFC,
193 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
194   DCB_ATTR_CEE_PEER_APP_TABLE,
195   DCB_ATTR_CEE_TX_PG,
196   DCB_ATTR_CEE_RX_PG,
197   DCB_ATTR_CEE_PFC,
198 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
199   DCB_ATTR_CEE_APP_TABLE,
200   DCB_ATTR_CEE_FEAT,
201   __DCB_ATTR_CEE_MAX
202 };
203 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
204 #define DCB_ATTR_CEE_MAX (__DCB_ATTR_CEE_MAX - 1)
205 enum peer_app_attr {
206   DCB_ATTR_CEE_PEER_APP_UNSPEC,
207   DCB_ATTR_CEE_PEER_APP_INFO,
208 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
209   DCB_ATTR_CEE_PEER_APP,
210   __DCB_ATTR_CEE_PEER_APP_MAX
211 };
212 #define DCB_ATTR_CEE_PEER_APP_MAX (__DCB_ATTR_CEE_PEER_APP_MAX - 1)
213 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
214 enum cee_attrs_app {
215   DCB_ATTR_CEE_APP_UNSPEC,
216   DCB_ATTR_CEE_APP,
217   __DCB_ATTR_CEE_APP_MAX
218 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
219 };
220 #define DCB_ATTR_CEE_APP_MAX (__DCB_ATTR_CEE_APP_MAX - 1)
221 enum dcbnl_pfc_up_attrs {
222   DCB_PFC_UP_ATTR_UNDEFINED,
223 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
224   DCB_PFC_UP_ATTR_0,
225   DCB_PFC_UP_ATTR_1,
226   DCB_PFC_UP_ATTR_2,
227   DCB_PFC_UP_ATTR_3,
228 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
229   DCB_PFC_UP_ATTR_4,
230   DCB_PFC_UP_ATTR_5,
231   DCB_PFC_UP_ATTR_6,
232   DCB_PFC_UP_ATTR_7,
233 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
234   DCB_PFC_UP_ATTR_ALL,
235   __DCB_PFC_UP_ATTR_ENUM_MAX,
236   DCB_PFC_UP_ATTR_MAX = __DCB_PFC_UP_ATTR_ENUM_MAX - 1,
237 };
238 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
239 enum dcbnl_pg_attrs {
240   DCB_PG_ATTR_UNDEFINED,
241   DCB_PG_ATTR_TC_0,
242   DCB_PG_ATTR_TC_1,
243 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
244   DCB_PG_ATTR_TC_2,
245   DCB_PG_ATTR_TC_3,
246   DCB_PG_ATTR_TC_4,
247   DCB_PG_ATTR_TC_5,
248 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
249   DCB_PG_ATTR_TC_6,
250   DCB_PG_ATTR_TC_7,
251   DCB_PG_ATTR_TC_MAX,
252   DCB_PG_ATTR_TC_ALL,
253 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
254   DCB_PG_ATTR_BW_ID_0,
255   DCB_PG_ATTR_BW_ID_1,
256   DCB_PG_ATTR_BW_ID_2,
257   DCB_PG_ATTR_BW_ID_3,
258 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
259   DCB_PG_ATTR_BW_ID_4,
260   DCB_PG_ATTR_BW_ID_5,
261   DCB_PG_ATTR_BW_ID_6,
262   DCB_PG_ATTR_BW_ID_7,
263 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
264   DCB_PG_ATTR_BW_ID_MAX,
265   DCB_PG_ATTR_BW_ID_ALL,
266   __DCB_PG_ATTR_ENUM_MAX,
267   DCB_PG_ATTR_MAX = __DCB_PG_ATTR_ENUM_MAX - 1,
268 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
269 };
270 enum dcbnl_tc_attrs {
271   DCB_TC_ATTR_PARAM_UNDEFINED,
272   DCB_TC_ATTR_PARAM_PGID,
273 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
274   DCB_TC_ATTR_PARAM_UP_MAPPING,
275   DCB_TC_ATTR_PARAM_STRICT_PRIO,
276   DCB_TC_ATTR_PARAM_BW_PCT,
277   DCB_TC_ATTR_PARAM_ALL,
278 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
279   __DCB_TC_ATTR_PARAM_ENUM_MAX,
280   DCB_TC_ATTR_PARAM_MAX = __DCB_TC_ATTR_PARAM_ENUM_MAX - 1,
281 };
282 enum dcbnl_cap_attrs {
283 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
284   DCB_CAP_ATTR_UNDEFINED,
285   DCB_CAP_ATTR_ALL,
286   DCB_CAP_ATTR_PG,
287   DCB_CAP_ATTR_PFC,
288 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
289   DCB_CAP_ATTR_UP2TC,
290   DCB_CAP_ATTR_PG_TCS,
291   DCB_CAP_ATTR_PFC_TCS,
292   DCB_CAP_ATTR_GSP,
293 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
294   DCB_CAP_ATTR_BCN,
295   DCB_CAP_ATTR_DCBX,
296   __DCB_CAP_ATTR_ENUM_MAX,
297   DCB_CAP_ATTR_MAX = __DCB_CAP_ATTR_ENUM_MAX - 1,
298 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
299 };
300 #define DCB_CAP_DCBX_HOST 0x01
301 #define DCB_CAP_DCBX_LLD_MANAGED 0x02
302 #define DCB_CAP_DCBX_VER_CEE 0x04
303 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
304 #define DCB_CAP_DCBX_VER_IEEE 0x08
305 #define DCB_CAP_DCBX_STATIC 0x10
306 enum dcbnl_numtcs_attrs {
307   DCB_NUMTCS_ATTR_UNDEFINED,
308 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
309   DCB_NUMTCS_ATTR_ALL,
310   DCB_NUMTCS_ATTR_PG,
311   DCB_NUMTCS_ATTR_PFC,
312   __DCB_NUMTCS_ATTR_ENUM_MAX,
313 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
314   DCB_NUMTCS_ATTR_MAX = __DCB_NUMTCS_ATTR_ENUM_MAX - 1,
315 };
316 enum dcbnl_bcn_attrs {
317   DCB_BCN_ATTR_UNDEFINED = 0,
318 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
319   DCB_BCN_ATTR_RP_0,
320   DCB_BCN_ATTR_RP_1,
321   DCB_BCN_ATTR_RP_2,
322   DCB_BCN_ATTR_RP_3,
323 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
324   DCB_BCN_ATTR_RP_4,
325   DCB_BCN_ATTR_RP_5,
326   DCB_BCN_ATTR_RP_6,
327   DCB_BCN_ATTR_RP_7,
328 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
329   DCB_BCN_ATTR_RP_ALL,
330   DCB_BCN_ATTR_BCNA_0,
331   DCB_BCN_ATTR_BCNA_1,
332   DCB_BCN_ATTR_ALPHA,
333 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
334   DCB_BCN_ATTR_BETA,
335   DCB_BCN_ATTR_GD,
336   DCB_BCN_ATTR_GI,
337   DCB_BCN_ATTR_TMAX,
338 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
339   DCB_BCN_ATTR_TD,
340   DCB_BCN_ATTR_RMIN,
341   DCB_BCN_ATTR_W,
342   DCB_BCN_ATTR_RD,
343 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
344   DCB_BCN_ATTR_RU,
345   DCB_BCN_ATTR_WRTT,
346   DCB_BCN_ATTR_RI,
347   DCB_BCN_ATTR_C,
348 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
349   DCB_BCN_ATTR_ALL,
350   __DCB_BCN_ATTR_ENUM_MAX,
351   DCB_BCN_ATTR_MAX = __DCB_BCN_ATTR_ENUM_MAX - 1,
352 };
353 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
354 enum dcb_general_attr_values {
355   DCB_ATTR_VALUE_UNDEFINED = 0xff
356 };
357 #define DCB_APP_IDTYPE_ETHTYPE 0x00
358 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
359 #define DCB_APP_IDTYPE_PORTNUM 0x01
360 enum dcbnl_app_attrs {
361   DCB_APP_ATTR_UNDEFINED,
362   DCB_APP_ATTR_IDTYPE,
363 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
364   DCB_APP_ATTR_ID,
365   DCB_APP_ATTR_PRIORITY,
366   __DCB_APP_ATTR_ENUM_MAX,
367   DCB_APP_ATTR_MAX = __DCB_APP_ATTR_ENUM_MAX - 1,
368 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
369 };
370 #define DCB_FEATCFG_ERROR 0x01
371 #define DCB_FEATCFG_ENABLE 0x02
372 #define DCB_FEATCFG_WILLING 0x04
373 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
374 #define DCB_FEATCFG_ADVERTISE 0x08
375 enum dcbnl_featcfg_attrs {
376   DCB_FEATCFG_ATTR_UNDEFINED,
377   DCB_FEATCFG_ATTR_ALL,
378 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
379   DCB_FEATCFG_ATTR_PG,
380   DCB_FEATCFG_ATTR_PFC,
381   DCB_FEATCFG_ATTR_APP,
382   __DCB_FEATCFG_ATTR_ENUM_MAX,
383 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
384   DCB_FEATCFG_ATTR_MAX = __DCB_FEATCFG_ATTR_ENUM_MAX - 1,
385 };
386 #endif
387