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 */ 29struct 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 */ 44struct ieee_maxrate { 45 __u64 tc_maxrate[IEEE_8021QAZ_MAX_TCS]; 46}; 47struct 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 60struct 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}; 70struct 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 82struct 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 */ 89struct dcb_peer_app_info { 90 __u8 willing; 91 __u8 error; 92}; 93/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 94struct 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}; 100enum 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}; 140enum 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}; 166enum 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) 181enum 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 */ 189enum 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) 205enum 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 */ 214enum 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) 221enum 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 */ 239enum 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}; 270enum 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}; 282enum 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 306enum 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}; 316enum 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 */ 354enum 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 360enum 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 375enum 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