• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
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 _UAPI_LINUX_ETHTOOL_NETLINK_H_
20 #define _UAPI_LINUX_ETHTOOL_NETLINK_H_
21 #include <linux/ethtool.h>
22 enum {
23   ETHTOOL_MSG_USER_NONE,
24   ETHTOOL_MSG_STRSET_GET,
25   ETHTOOL_MSG_LINKINFO_GET,
26   ETHTOOL_MSG_LINKINFO_SET,
27   ETHTOOL_MSG_LINKMODES_GET,
28   ETHTOOL_MSG_LINKMODES_SET,
29   ETHTOOL_MSG_LINKSTATE_GET,
30   ETHTOOL_MSG_DEBUG_GET,
31   ETHTOOL_MSG_DEBUG_SET,
32   ETHTOOL_MSG_WOL_GET,
33   ETHTOOL_MSG_WOL_SET,
34   ETHTOOL_MSG_FEATURES_GET,
35   ETHTOOL_MSG_FEATURES_SET,
36   ETHTOOL_MSG_PRIVFLAGS_GET,
37   ETHTOOL_MSG_PRIVFLAGS_SET,
38   ETHTOOL_MSG_RINGS_GET,
39   ETHTOOL_MSG_RINGS_SET,
40   ETHTOOL_MSG_CHANNELS_GET,
41   ETHTOOL_MSG_CHANNELS_SET,
42   ETHTOOL_MSG_COALESCE_GET,
43   ETHTOOL_MSG_COALESCE_SET,
44   ETHTOOL_MSG_PAUSE_GET,
45   ETHTOOL_MSG_PAUSE_SET,
46   ETHTOOL_MSG_EEE_GET,
47   ETHTOOL_MSG_EEE_SET,
48   ETHTOOL_MSG_TSINFO_GET,
49   ETHTOOL_MSG_CABLE_TEST_ACT,
50   ETHTOOL_MSG_CABLE_TEST_TDR_ACT,
51   ETHTOOL_MSG_TUNNEL_INFO_GET,
52   ETHTOOL_MSG_FEC_GET,
53   ETHTOOL_MSG_FEC_SET,
54   ETHTOOL_MSG_MODULE_EEPROM_GET,
55   ETHTOOL_MSG_STATS_GET,
56   ETHTOOL_MSG_PHC_VCLOCKS_GET,
57   ETHTOOL_MSG_MODULE_GET,
58   ETHTOOL_MSG_MODULE_SET,
59   __ETHTOOL_MSG_USER_CNT,
60   ETHTOOL_MSG_USER_MAX = __ETHTOOL_MSG_USER_CNT - 1
61 };
62 enum {
63   ETHTOOL_MSG_KERNEL_NONE,
64   ETHTOOL_MSG_STRSET_GET_REPLY,
65   ETHTOOL_MSG_LINKINFO_GET_REPLY,
66   ETHTOOL_MSG_LINKINFO_NTF,
67   ETHTOOL_MSG_LINKMODES_GET_REPLY,
68   ETHTOOL_MSG_LINKMODES_NTF,
69   ETHTOOL_MSG_LINKSTATE_GET_REPLY,
70   ETHTOOL_MSG_DEBUG_GET_REPLY,
71   ETHTOOL_MSG_DEBUG_NTF,
72   ETHTOOL_MSG_WOL_GET_REPLY,
73   ETHTOOL_MSG_WOL_NTF,
74   ETHTOOL_MSG_FEATURES_GET_REPLY,
75   ETHTOOL_MSG_FEATURES_SET_REPLY,
76   ETHTOOL_MSG_FEATURES_NTF,
77   ETHTOOL_MSG_PRIVFLAGS_GET_REPLY,
78   ETHTOOL_MSG_PRIVFLAGS_NTF,
79   ETHTOOL_MSG_RINGS_GET_REPLY,
80   ETHTOOL_MSG_RINGS_NTF,
81   ETHTOOL_MSG_CHANNELS_GET_REPLY,
82   ETHTOOL_MSG_CHANNELS_NTF,
83   ETHTOOL_MSG_COALESCE_GET_REPLY,
84   ETHTOOL_MSG_COALESCE_NTF,
85   ETHTOOL_MSG_PAUSE_GET_REPLY,
86   ETHTOOL_MSG_PAUSE_NTF,
87   ETHTOOL_MSG_EEE_GET_REPLY,
88   ETHTOOL_MSG_EEE_NTF,
89   ETHTOOL_MSG_TSINFO_GET_REPLY,
90   ETHTOOL_MSG_CABLE_TEST_NTF,
91   ETHTOOL_MSG_CABLE_TEST_TDR_NTF,
92   ETHTOOL_MSG_TUNNEL_INFO_GET_REPLY,
93   ETHTOOL_MSG_FEC_GET_REPLY,
94   ETHTOOL_MSG_FEC_NTF,
95   ETHTOOL_MSG_MODULE_EEPROM_GET_REPLY,
96   ETHTOOL_MSG_STATS_GET_REPLY,
97   ETHTOOL_MSG_PHC_VCLOCKS_GET_REPLY,
98   ETHTOOL_MSG_MODULE_GET_REPLY,
99   ETHTOOL_MSG_MODULE_NTF,
100   __ETHTOOL_MSG_KERNEL_CNT,
101   ETHTOOL_MSG_KERNEL_MAX = __ETHTOOL_MSG_KERNEL_CNT - 1
102 };
103 #define ETHTOOL_FLAG_COMPACT_BITSETS (1 << 0)
104 #define ETHTOOL_FLAG_OMIT_REPLY (1 << 1)
105 #define ETHTOOL_FLAG_STATS (1 << 2)
106 #define ETHTOOL_FLAG_ALL (ETHTOOL_FLAG_COMPACT_BITSETS | ETHTOOL_FLAG_OMIT_REPLY | ETHTOOL_FLAG_STATS)
107 enum {
108   ETHTOOL_A_HEADER_UNSPEC,
109   ETHTOOL_A_HEADER_DEV_INDEX,
110   ETHTOOL_A_HEADER_DEV_NAME,
111   ETHTOOL_A_HEADER_FLAGS,
112   __ETHTOOL_A_HEADER_CNT,
113   ETHTOOL_A_HEADER_MAX = __ETHTOOL_A_HEADER_CNT - 1
114 };
115 enum {
116   ETHTOOL_A_BITSET_BIT_UNSPEC,
117   ETHTOOL_A_BITSET_BIT_INDEX,
118   ETHTOOL_A_BITSET_BIT_NAME,
119   ETHTOOL_A_BITSET_BIT_VALUE,
120   __ETHTOOL_A_BITSET_BIT_CNT,
121   ETHTOOL_A_BITSET_BIT_MAX = __ETHTOOL_A_BITSET_BIT_CNT - 1
122 };
123 enum {
124   ETHTOOL_A_BITSET_BITS_UNSPEC,
125   ETHTOOL_A_BITSET_BITS_BIT,
126   __ETHTOOL_A_BITSET_BITS_CNT,
127   ETHTOOL_A_BITSET_BITS_MAX = __ETHTOOL_A_BITSET_BITS_CNT - 1
128 };
129 enum {
130   ETHTOOL_A_BITSET_UNSPEC,
131   ETHTOOL_A_BITSET_NOMASK,
132   ETHTOOL_A_BITSET_SIZE,
133   ETHTOOL_A_BITSET_BITS,
134   ETHTOOL_A_BITSET_VALUE,
135   ETHTOOL_A_BITSET_MASK,
136   __ETHTOOL_A_BITSET_CNT,
137   ETHTOOL_A_BITSET_MAX = __ETHTOOL_A_BITSET_CNT - 1
138 };
139 enum {
140   ETHTOOL_A_STRING_UNSPEC,
141   ETHTOOL_A_STRING_INDEX,
142   ETHTOOL_A_STRING_VALUE,
143   __ETHTOOL_A_STRING_CNT,
144   ETHTOOL_A_STRING_MAX = __ETHTOOL_A_STRING_CNT - 1
145 };
146 enum {
147   ETHTOOL_A_STRINGS_UNSPEC,
148   ETHTOOL_A_STRINGS_STRING,
149   __ETHTOOL_A_STRINGS_CNT,
150   ETHTOOL_A_STRINGS_MAX = __ETHTOOL_A_STRINGS_CNT - 1
151 };
152 enum {
153   ETHTOOL_A_STRINGSET_UNSPEC,
154   ETHTOOL_A_STRINGSET_ID,
155   ETHTOOL_A_STRINGSET_COUNT,
156   ETHTOOL_A_STRINGSET_STRINGS,
157   __ETHTOOL_A_STRINGSET_CNT,
158   ETHTOOL_A_STRINGSET_MAX = __ETHTOOL_A_STRINGSET_CNT - 1
159 };
160 enum {
161   ETHTOOL_A_STRINGSETS_UNSPEC,
162   ETHTOOL_A_STRINGSETS_STRINGSET,
163   __ETHTOOL_A_STRINGSETS_CNT,
164   ETHTOOL_A_STRINGSETS_MAX = __ETHTOOL_A_STRINGSETS_CNT - 1
165 };
166 enum {
167   ETHTOOL_A_STRSET_UNSPEC,
168   ETHTOOL_A_STRSET_HEADER,
169   ETHTOOL_A_STRSET_STRINGSETS,
170   ETHTOOL_A_STRSET_COUNTS_ONLY,
171   __ETHTOOL_A_STRSET_CNT,
172   ETHTOOL_A_STRSET_MAX = __ETHTOOL_A_STRSET_CNT - 1
173 };
174 enum {
175   ETHTOOL_A_LINKINFO_UNSPEC,
176   ETHTOOL_A_LINKINFO_HEADER,
177   ETHTOOL_A_LINKINFO_PORT,
178   ETHTOOL_A_LINKINFO_PHYADDR,
179   ETHTOOL_A_LINKINFO_TP_MDIX,
180   ETHTOOL_A_LINKINFO_TP_MDIX_CTRL,
181   ETHTOOL_A_LINKINFO_TRANSCEIVER,
182   __ETHTOOL_A_LINKINFO_CNT,
183   ETHTOOL_A_LINKINFO_MAX = __ETHTOOL_A_LINKINFO_CNT - 1
184 };
185 enum {
186   ETHTOOL_A_LINKMODES_UNSPEC,
187   ETHTOOL_A_LINKMODES_HEADER,
188   ETHTOOL_A_LINKMODES_AUTONEG,
189   ETHTOOL_A_LINKMODES_OURS,
190   ETHTOOL_A_LINKMODES_PEER,
191   ETHTOOL_A_LINKMODES_SPEED,
192   ETHTOOL_A_LINKMODES_DUPLEX,
193   ETHTOOL_A_LINKMODES_MASTER_SLAVE_CFG,
194   ETHTOOL_A_LINKMODES_MASTER_SLAVE_STATE,
195   ETHTOOL_A_LINKMODES_LANES,
196   __ETHTOOL_A_LINKMODES_CNT,
197   ETHTOOL_A_LINKMODES_MAX = __ETHTOOL_A_LINKMODES_CNT - 1
198 };
199 enum {
200   ETHTOOL_A_LINKSTATE_UNSPEC,
201   ETHTOOL_A_LINKSTATE_HEADER,
202   ETHTOOL_A_LINKSTATE_LINK,
203   ETHTOOL_A_LINKSTATE_SQI,
204   ETHTOOL_A_LINKSTATE_SQI_MAX,
205   ETHTOOL_A_LINKSTATE_EXT_STATE,
206   ETHTOOL_A_LINKSTATE_EXT_SUBSTATE,
207   __ETHTOOL_A_LINKSTATE_CNT,
208   ETHTOOL_A_LINKSTATE_MAX = __ETHTOOL_A_LINKSTATE_CNT - 1
209 };
210 enum {
211   ETHTOOL_A_DEBUG_UNSPEC,
212   ETHTOOL_A_DEBUG_HEADER,
213   ETHTOOL_A_DEBUG_MSGMASK,
214   __ETHTOOL_A_DEBUG_CNT,
215   ETHTOOL_A_DEBUG_MAX = __ETHTOOL_A_DEBUG_CNT - 1
216 };
217 enum {
218   ETHTOOL_A_WOL_UNSPEC,
219   ETHTOOL_A_WOL_HEADER,
220   ETHTOOL_A_WOL_MODES,
221   ETHTOOL_A_WOL_SOPASS,
222   __ETHTOOL_A_WOL_CNT,
223   ETHTOOL_A_WOL_MAX = __ETHTOOL_A_WOL_CNT - 1
224 };
225 enum {
226   ETHTOOL_A_FEATURES_UNSPEC,
227   ETHTOOL_A_FEATURES_HEADER,
228   ETHTOOL_A_FEATURES_HW,
229   ETHTOOL_A_FEATURES_WANTED,
230   ETHTOOL_A_FEATURES_ACTIVE,
231   ETHTOOL_A_FEATURES_NOCHANGE,
232   __ETHTOOL_A_FEATURES_CNT,
233   ETHTOOL_A_FEATURES_MAX = __ETHTOOL_A_FEATURES_CNT - 1
234 };
235 enum {
236   ETHTOOL_A_PRIVFLAGS_UNSPEC,
237   ETHTOOL_A_PRIVFLAGS_HEADER,
238   ETHTOOL_A_PRIVFLAGS_FLAGS,
239   __ETHTOOL_A_PRIVFLAGS_CNT,
240   ETHTOOL_A_PRIVFLAGS_MAX = __ETHTOOL_A_PRIVFLAGS_CNT - 1
241 };
242 enum {
243   ETHTOOL_A_RINGS_UNSPEC,
244   ETHTOOL_A_RINGS_HEADER,
245   ETHTOOL_A_RINGS_RX_MAX,
246   ETHTOOL_A_RINGS_RX_MINI_MAX,
247   ETHTOOL_A_RINGS_RX_JUMBO_MAX,
248   ETHTOOL_A_RINGS_TX_MAX,
249   ETHTOOL_A_RINGS_RX,
250   ETHTOOL_A_RINGS_RX_MINI,
251   ETHTOOL_A_RINGS_RX_JUMBO,
252   ETHTOOL_A_RINGS_TX,
253   ETHTOOL_A_RINGS_RX_BUF_LEN,
254   __ETHTOOL_A_RINGS_CNT,
255   ETHTOOL_A_RINGS_MAX = (__ETHTOOL_A_RINGS_CNT - 1)
256 };
257 enum {
258   ETHTOOL_A_CHANNELS_UNSPEC,
259   ETHTOOL_A_CHANNELS_HEADER,
260   ETHTOOL_A_CHANNELS_RX_MAX,
261   ETHTOOL_A_CHANNELS_TX_MAX,
262   ETHTOOL_A_CHANNELS_OTHER_MAX,
263   ETHTOOL_A_CHANNELS_COMBINED_MAX,
264   ETHTOOL_A_CHANNELS_RX_COUNT,
265   ETHTOOL_A_CHANNELS_TX_COUNT,
266   ETHTOOL_A_CHANNELS_OTHER_COUNT,
267   ETHTOOL_A_CHANNELS_COMBINED_COUNT,
268   __ETHTOOL_A_CHANNELS_CNT,
269   ETHTOOL_A_CHANNELS_MAX = (__ETHTOOL_A_CHANNELS_CNT - 1)
270 };
271 enum {
272   ETHTOOL_A_COALESCE_UNSPEC,
273   ETHTOOL_A_COALESCE_HEADER,
274   ETHTOOL_A_COALESCE_RX_USECS,
275   ETHTOOL_A_COALESCE_RX_MAX_FRAMES,
276   ETHTOOL_A_COALESCE_RX_USECS_IRQ,
277   ETHTOOL_A_COALESCE_RX_MAX_FRAMES_IRQ,
278   ETHTOOL_A_COALESCE_TX_USECS,
279   ETHTOOL_A_COALESCE_TX_MAX_FRAMES,
280   ETHTOOL_A_COALESCE_TX_USECS_IRQ,
281   ETHTOOL_A_COALESCE_TX_MAX_FRAMES_IRQ,
282   ETHTOOL_A_COALESCE_STATS_BLOCK_USECS,
283   ETHTOOL_A_COALESCE_USE_ADAPTIVE_RX,
284   ETHTOOL_A_COALESCE_USE_ADAPTIVE_TX,
285   ETHTOOL_A_COALESCE_PKT_RATE_LOW,
286   ETHTOOL_A_COALESCE_RX_USECS_LOW,
287   ETHTOOL_A_COALESCE_RX_MAX_FRAMES_LOW,
288   ETHTOOL_A_COALESCE_TX_USECS_LOW,
289   ETHTOOL_A_COALESCE_TX_MAX_FRAMES_LOW,
290   ETHTOOL_A_COALESCE_PKT_RATE_HIGH,
291   ETHTOOL_A_COALESCE_RX_USECS_HIGH,
292   ETHTOOL_A_COALESCE_RX_MAX_FRAMES_HIGH,
293   ETHTOOL_A_COALESCE_TX_USECS_HIGH,
294   ETHTOOL_A_COALESCE_TX_MAX_FRAMES_HIGH,
295   ETHTOOL_A_COALESCE_RATE_SAMPLE_INTERVAL,
296   ETHTOOL_A_COALESCE_USE_CQE_MODE_TX,
297   ETHTOOL_A_COALESCE_USE_CQE_MODE_RX,
298   __ETHTOOL_A_COALESCE_CNT,
299   ETHTOOL_A_COALESCE_MAX = (__ETHTOOL_A_COALESCE_CNT - 1)
300 };
301 enum {
302   ETHTOOL_A_PAUSE_UNSPEC,
303   ETHTOOL_A_PAUSE_HEADER,
304   ETHTOOL_A_PAUSE_AUTONEG,
305   ETHTOOL_A_PAUSE_RX,
306   ETHTOOL_A_PAUSE_TX,
307   ETHTOOL_A_PAUSE_STATS,
308   __ETHTOOL_A_PAUSE_CNT,
309   ETHTOOL_A_PAUSE_MAX = (__ETHTOOL_A_PAUSE_CNT - 1)
310 };
311 enum {
312   ETHTOOL_A_PAUSE_STAT_UNSPEC,
313   ETHTOOL_A_PAUSE_STAT_PAD,
314   ETHTOOL_A_PAUSE_STAT_TX_FRAMES,
315   ETHTOOL_A_PAUSE_STAT_RX_FRAMES,
316   __ETHTOOL_A_PAUSE_STAT_CNT,
317   ETHTOOL_A_PAUSE_STAT_MAX = (__ETHTOOL_A_PAUSE_STAT_CNT - 1)
318 };
319 enum {
320   ETHTOOL_A_EEE_UNSPEC,
321   ETHTOOL_A_EEE_HEADER,
322   ETHTOOL_A_EEE_MODES_OURS,
323   ETHTOOL_A_EEE_MODES_PEER,
324   ETHTOOL_A_EEE_ACTIVE,
325   ETHTOOL_A_EEE_ENABLED,
326   ETHTOOL_A_EEE_TX_LPI_ENABLED,
327   ETHTOOL_A_EEE_TX_LPI_TIMER,
328   __ETHTOOL_A_EEE_CNT,
329   ETHTOOL_A_EEE_MAX = (__ETHTOOL_A_EEE_CNT - 1)
330 };
331 enum {
332   ETHTOOL_A_TSINFO_UNSPEC,
333   ETHTOOL_A_TSINFO_HEADER,
334   ETHTOOL_A_TSINFO_TIMESTAMPING,
335   ETHTOOL_A_TSINFO_TX_TYPES,
336   ETHTOOL_A_TSINFO_RX_FILTERS,
337   ETHTOOL_A_TSINFO_PHC_INDEX,
338   __ETHTOOL_A_TSINFO_CNT,
339   ETHTOOL_A_TSINFO_MAX = (__ETHTOOL_A_TSINFO_CNT - 1)
340 };
341 enum {
342   ETHTOOL_A_PHC_VCLOCKS_UNSPEC,
343   ETHTOOL_A_PHC_VCLOCKS_HEADER,
344   ETHTOOL_A_PHC_VCLOCKS_NUM,
345   ETHTOOL_A_PHC_VCLOCKS_INDEX,
346   __ETHTOOL_A_PHC_VCLOCKS_CNT,
347   ETHTOOL_A_PHC_VCLOCKS_MAX = (__ETHTOOL_A_PHC_VCLOCKS_CNT - 1)
348 };
349 enum {
350   ETHTOOL_A_CABLE_TEST_UNSPEC,
351   ETHTOOL_A_CABLE_TEST_HEADER,
352   __ETHTOOL_A_CABLE_TEST_CNT,
353   ETHTOOL_A_CABLE_TEST_MAX = __ETHTOOL_A_CABLE_TEST_CNT - 1
354 };
355 enum {
356   ETHTOOL_A_CABLE_RESULT_CODE_UNSPEC,
357   ETHTOOL_A_CABLE_RESULT_CODE_OK,
358   ETHTOOL_A_CABLE_RESULT_CODE_OPEN,
359   ETHTOOL_A_CABLE_RESULT_CODE_SAME_SHORT,
360   ETHTOOL_A_CABLE_RESULT_CODE_CROSS_SHORT,
361 };
362 enum {
363   ETHTOOL_A_CABLE_PAIR_A,
364   ETHTOOL_A_CABLE_PAIR_B,
365   ETHTOOL_A_CABLE_PAIR_C,
366   ETHTOOL_A_CABLE_PAIR_D,
367 };
368 enum {
369   ETHTOOL_A_CABLE_RESULT_UNSPEC,
370   ETHTOOL_A_CABLE_RESULT_PAIR,
371   ETHTOOL_A_CABLE_RESULT_CODE,
372   __ETHTOOL_A_CABLE_RESULT_CNT,
373   ETHTOOL_A_CABLE_RESULT_MAX = (__ETHTOOL_A_CABLE_RESULT_CNT - 1)
374 };
375 enum {
376   ETHTOOL_A_CABLE_FAULT_LENGTH_UNSPEC,
377   ETHTOOL_A_CABLE_FAULT_LENGTH_PAIR,
378   ETHTOOL_A_CABLE_FAULT_LENGTH_CM,
379   __ETHTOOL_A_CABLE_FAULT_LENGTH_CNT,
380   ETHTOOL_A_CABLE_FAULT_LENGTH_MAX = (__ETHTOOL_A_CABLE_FAULT_LENGTH_CNT - 1)
381 };
382 enum {
383   ETHTOOL_A_CABLE_TEST_NTF_STATUS_UNSPEC,
384   ETHTOOL_A_CABLE_TEST_NTF_STATUS_STARTED,
385   ETHTOOL_A_CABLE_TEST_NTF_STATUS_COMPLETED
386 };
387 enum {
388   ETHTOOL_A_CABLE_NEST_UNSPEC,
389   ETHTOOL_A_CABLE_NEST_RESULT,
390   ETHTOOL_A_CABLE_NEST_FAULT_LENGTH,
391   __ETHTOOL_A_CABLE_NEST_CNT,
392   ETHTOOL_A_CABLE_NEST_MAX = (__ETHTOOL_A_CABLE_NEST_CNT - 1)
393 };
394 enum {
395   ETHTOOL_A_CABLE_TEST_NTF_UNSPEC,
396   ETHTOOL_A_CABLE_TEST_NTF_HEADER,
397   ETHTOOL_A_CABLE_TEST_NTF_STATUS,
398   ETHTOOL_A_CABLE_TEST_NTF_NEST,
399   __ETHTOOL_A_CABLE_TEST_NTF_CNT,
400   ETHTOOL_A_CABLE_TEST_NTF_MAX = (__ETHTOOL_A_CABLE_TEST_NTF_CNT - 1)
401 };
402 enum {
403   ETHTOOL_A_CABLE_TEST_TDR_CFG_UNSPEC,
404   ETHTOOL_A_CABLE_TEST_TDR_CFG_FIRST,
405   ETHTOOL_A_CABLE_TEST_TDR_CFG_LAST,
406   ETHTOOL_A_CABLE_TEST_TDR_CFG_STEP,
407   ETHTOOL_A_CABLE_TEST_TDR_CFG_PAIR,
408   __ETHTOOL_A_CABLE_TEST_TDR_CFG_CNT,
409   ETHTOOL_A_CABLE_TEST_TDR_CFG_MAX = __ETHTOOL_A_CABLE_TEST_TDR_CFG_CNT - 1
410 };
411 enum {
412   ETHTOOL_A_CABLE_TEST_TDR_UNSPEC,
413   ETHTOOL_A_CABLE_TEST_TDR_HEADER,
414   ETHTOOL_A_CABLE_TEST_TDR_CFG,
415   __ETHTOOL_A_CABLE_TEST_TDR_CNT,
416   ETHTOOL_A_CABLE_TEST_TDR_MAX = __ETHTOOL_A_CABLE_TEST_TDR_CNT - 1
417 };
418 enum {
419   ETHTOOL_A_CABLE_AMPLITUDE_UNSPEC,
420   ETHTOOL_A_CABLE_AMPLITUDE_PAIR,
421   ETHTOOL_A_CABLE_AMPLITUDE_mV,
422   __ETHTOOL_A_CABLE_AMPLITUDE_CNT,
423   ETHTOOL_A_CABLE_AMPLITUDE_MAX = (__ETHTOOL_A_CABLE_AMPLITUDE_CNT - 1)
424 };
425 enum {
426   ETHTOOL_A_CABLE_PULSE_UNSPEC,
427   ETHTOOL_A_CABLE_PULSE_mV,
428   __ETHTOOL_A_CABLE_PULSE_CNT,
429   ETHTOOL_A_CABLE_PULSE_MAX = (__ETHTOOL_A_CABLE_PULSE_CNT - 1)
430 };
431 enum {
432   ETHTOOL_A_CABLE_STEP_UNSPEC,
433   ETHTOOL_A_CABLE_STEP_FIRST_DISTANCE,
434   ETHTOOL_A_CABLE_STEP_LAST_DISTANCE,
435   ETHTOOL_A_CABLE_STEP_STEP_DISTANCE,
436   __ETHTOOL_A_CABLE_STEP_CNT,
437   ETHTOOL_A_CABLE_STEP_MAX = (__ETHTOOL_A_CABLE_STEP_CNT - 1)
438 };
439 enum {
440   ETHTOOL_A_CABLE_TDR_NEST_UNSPEC,
441   ETHTOOL_A_CABLE_TDR_NEST_STEP,
442   ETHTOOL_A_CABLE_TDR_NEST_AMPLITUDE,
443   ETHTOOL_A_CABLE_TDR_NEST_PULSE,
444   __ETHTOOL_A_CABLE_TDR_NEST_CNT,
445   ETHTOOL_A_CABLE_TDR_NEST_MAX = (__ETHTOOL_A_CABLE_TDR_NEST_CNT - 1)
446 };
447 enum {
448   ETHTOOL_A_CABLE_TEST_TDR_NTF_UNSPEC,
449   ETHTOOL_A_CABLE_TEST_TDR_NTF_HEADER,
450   ETHTOOL_A_CABLE_TEST_TDR_NTF_STATUS,
451   ETHTOOL_A_CABLE_TEST_TDR_NTF_NEST,
452   __ETHTOOL_A_CABLE_TEST_TDR_NTF_CNT,
453   ETHTOOL_A_CABLE_TEST_TDR_NTF_MAX = __ETHTOOL_A_CABLE_TEST_TDR_NTF_CNT - 1
454 };
455 enum {
456   ETHTOOL_UDP_TUNNEL_TYPE_VXLAN,
457   ETHTOOL_UDP_TUNNEL_TYPE_GENEVE,
458   ETHTOOL_UDP_TUNNEL_TYPE_VXLAN_GPE,
459   __ETHTOOL_UDP_TUNNEL_TYPE_CNT
460 };
461 enum {
462   ETHTOOL_A_TUNNEL_UDP_ENTRY_UNSPEC,
463   ETHTOOL_A_TUNNEL_UDP_ENTRY_PORT,
464   ETHTOOL_A_TUNNEL_UDP_ENTRY_TYPE,
465   __ETHTOOL_A_TUNNEL_UDP_ENTRY_CNT,
466   ETHTOOL_A_TUNNEL_UDP_ENTRY_MAX = (__ETHTOOL_A_TUNNEL_UDP_ENTRY_CNT - 1)
467 };
468 enum {
469   ETHTOOL_A_TUNNEL_UDP_TABLE_UNSPEC,
470   ETHTOOL_A_TUNNEL_UDP_TABLE_SIZE,
471   ETHTOOL_A_TUNNEL_UDP_TABLE_TYPES,
472   ETHTOOL_A_TUNNEL_UDP_TABLE_ENTRY,
473   __ETHTOOL_A_TUNNEL_UDP_TABLE_CNT,
474   ETHTOOL_A_TUNNEL_UDP_TABLE_MAX = (__ETHTOOL_A_TUNNEL_UDP_TABLE_CNT - 1)
475 };
476 enum {
477   ETHTOOL_A_TUNNEL_UDP_UNSPEC,
478   ETHTOOL_A_TUNNEL_UDP_TABLE,
479   __ETHTOOL_A_TUNNEL_UDP_CNT,
480   ETHTOOL_A_TUNNEL_UDP_MAX = (__ETHTOOL_A_TUNNEL_UDP_CNT - 1)
481 };
482 enum {
483   ETHTOOL_A_TUNNEL_INFO_UNSPEC,
484   ETHTOOL_A_TUNNEL_INFO_HEADER,
485   ETHTOOL_A_TUNNEL_INFO_UDP_PORTS,
486   __ETHTOOL_A_TUNNEL_INFO_CNT,
487   ETHTOOL_A_TUNNEL_INFO_MAX = (__ETHTOOL_A_TUNNEL_INFO_CNT - 1)
488 };
489 enum {
490   ETHTOOL_A_FEC_UNSPEC,
491   ETHTOOL_A_FEC_HEADER,
492   ETHTOOL_A_FEC_MODES,
493   ETHTOOL_A_FEC_AUTO,
494   ETHTOOL_A_FEC_ACTIVE,
495   ETHTOOL_A_FEC_STATS,
496   __ETHTOOL_A_FEC_CNT,
497   ETHTOOL_A_FEC_MAX = (__ETHTOOL_A_FEC_CNT - 1)
498 };
499 enum {
500   ETHTOOL_A_FEC_STAT_UNSPEC,
501   ETHTOOL_A_FEC_STAT_PAD,
502   ETHTOOL_A_FEC_STAT_CORRECTED,
503   ETHTOOL_A_FEC_STAT_UNCORR,
504   ETHTOOL_A_FEC_STAT_CORR_BITS,
505   __ETHTOOL_A_FEC_STAT_CNT,
506   ETHTOOL_A_FEC_STAT_MAX = (__ETHTOOL_A_FEC_STAT_CNT - 1)
507 };
508 enum {
509   ETHTOOL_A_MODULE_EEPROM_UNSPEC,
510   ETHTOOL_A_MODULE_EEPROM_HEADER,
511   ETHTOOL_A_MODULE_EEPROM_OFFSET,
512   ETHTOOL_A_MODULE_EEPROM_LENGTH,
513   ETHTOOL_A_MODULE_EEPROM_PAGE,
514   ETHTOOL_A_MODULE_EEPROM_BANK,
515   ETHTOOL_A_MODULE_EEPROM_I2C_ADDRESS,
516   ETHTOOL_A_MODULE_EEPROM_DATA,
517   __ETHTOOL_A_MODULE_EEPROM_CNT,
518   ETHTOOL_A_MODULE_EEPROM_MAX = (__ETHTOOL_A_MODULE_EEPROM_CNT - 1)
519 };
520 enum {
521   ETHTOOL_A_STATS_UNSPEC,
522   ETHTOOL_A_STATS_PAD,
523   ETHTOOL_A_STATS_HEADER,
524   ETHTOOL_A_STATS_GROUPS,
525   ETHTOOL_A_STATS_GRP,
526   __ETHTOOL_A_STATS_CNT,
527   ETHTOOL_A_STATS_MAX = (__ETHTOOL_A_STATS_CNT - 1)
528 };
529 enum {
530   ETHTOOL_STATS_ETH_PHY,
531   ETHTOOL_STATS_ETH_MAC,
532   ETHTOOL_STATS_ETH_CTRL,
533   ETHTOOL_STATS_RMON,
534   __ETHTOOL_STATS_CNT
535 };
536 enum {
537   ETHTOOL_A_STATS_GRP_UNSPEC,
538   ETHTOOL_A_STATS_GRP_PAD,
539   ETHTOOL_A_STATS_GRP_ID,
540   ETHTOOL_A_STATS_GRP_SS_ID,
541   ETHTOOL_A_STATS_GRP_STAT,
542   ETHTOOL_A_STATS_GRP_HIST_RX,
543   ETHTOOL_A_STATS_GRP_HIST_TX,
544   ETHTOOL_A_STATS_GRP_HIST_BKT_LOW,
545   ETHTOOL_A_STATS_GRP_HIST_BKT_HI,
546   ETHTOOL_A_STATS_GRP_HIST_VAL,
547   __ETHTOOL_A_STATS_GRP_CNT,
548   ETHTOOL_A_STATS_GRP_MAX = (__ETHTOOL_A_STATS_CNT - 1)
549 };
550 enum {
551   ETHTOOL_A_STATS_ETH_PHY_5_SYM_ERR,
552   __ETHTOOL_A_STATS_ETH_PHY_CNT,
553   ETHTOOL_A_STATS_ETH_PHY_MAX = (__ETHTOOL_A_STATS_ETH_PHY_CNT - 1)
554 };
555 enum {
556   ETHTOOL_A_STATS_ETH_MAC_2_TX_PKT,
557   ETHTOOL_A_STATS_ETH_MAC_3_SINGLE_COL,
558   ETHTOOL_A_STATS_ETH_MAC_4_MULTI_COL,
559   ETHTOOL_A_STATS_ETH_MAC_5_RX_PKT,
560   ETHTOOL_A_STATS_ETH_MAC_6_FCS_ERR,
561   ETHTOOL_A_STATS_ETH_MAC_7_ALIGN_ERR,
562   ETHTOOL_A_STATS_ETH_MAC_8_TX_BYTES,
563   ETHTOOL_A_STATS_ETH_MAC_9_TX_DEFER,
564   ETHTOOL_A_STATS_ETH_MAC_10_LATE_COL,
565   ETHTOOL_A_STATS_ETH_MAC_11_XS_COL,
566   ETHTOOL_A_STATS_ETH_MAC_12_TX_INT_ERR,
567   ETHTOOL_A_STATS_ETH_MAC_13_CS_ERR,
568   ETHTOOL_A_STATS_ETH_MAC_14_RX_BYTES,
569   ETHTOOL_A_STATS_ETH_MAC_15_RX_INT_ERR,
570   ETHTOOL_A_STATS_ETH_MAC_18_TX_MCAST,
571   ETHTOOL_A_STATS_ETH_MAC_19_TX_BCAST,
572   ETHTOOL_A_STATS_ETH_MAC_20_XS_DEFER,
573   ETHTOOL_A_STATS_ETH_MAC_21_RX_MCAST,
574   ETHTOOL_A_STATS_ETH_MAC_22_RX_BCAST,
575   ETHTOOL_A_STATS_ETH_MAC_23_IR_LEN_ERR,
576   ETHTOOL_A_STATS_ETH_MAC_24_OOR_LEN,
577   ETHTOOL_A_STATS_ETH_MAC_25_TOO_LONG_ERR,
578   __ETHTOOL_A_STATS_ETH_MAC_CNT,
579   ETHTOOL_A_STATS_ETH_MAC_MAX = (__ETHTOOL_A_STATS_ETH_MAC_CNT - 1)
580 };
581 enum {
582   ETHTOOL_A_STATS_ETH_CTRL_3_TX,
583   ETHTOOL_A_STATS_ETH_CTRL_4_RX,
584   ETHTOOL_A_STATS_ETH_CTRL_5_RX_UNSUP,
585   __ETHTOOL_A_STATS_ETH_CTRL_CNT,
586   ETHTOOL_A_STATS_ETH_CTRL_MAX = (__ETHTOOL_A_STATS_ETH_CTRL_CNT - 1)
587 };
588 enum {
589   ETHTOOL_A_STATS_RMON_UNDERSIZE,
590   ETHTOOL_A_STATS_RMON_OVERSIZE,
591   ETHTOOL_A_STATS_RMON_FRAG,
592   ETHTOOL_A_STATS_RMON_JABBER,
593   __ETHTOOL_A_STATS_RMON_CNT,
594   ETHTOOL_A_STATS_RMON_MAX = (__ETHTOOL_A_STATS_RMON_CNT - 1)
595 };
596 enum {
597   ETHTOOL_A_MODULE_UNSPEC,
598   ETHTOOL_A_MODULE_HEADER,
599   ETHTOOL_A_MODULE_POWER_MODE_POLICY,
600   ETHTOOL_A_MODULE_POWER_MODE,
601   __ETHTOOL_A_MODULE_CNT,
602   ETHTOOL_A_MODULE_MAX = (__ETHTOOL_A_MODULE_CNT - 1)
603 };
604 #define ETHTOOL_GENL_NAME "ethtool"
605 #define ETHTOOL_GENL_VERSION 1
606 #define ETHTOOL_MCGRP_MONITOR_NAME "monitor"
607 #endif
608