• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 /*
2  * This file is auto-generated. Modifications will be lost.
3  *
4  * See https://android.googlesource.com/platform/bionic/+/master/libc/kernel/
5  * for more information.
6  */
7 #ifndef _UAPI_LINUX_ETHTOOL_NETLINK_H_
8 #define _UAPI_LINUX_ETHTOOL_NETLINK_H_
9 #include <linux/ethtool.h>
10 enum {
11   ETHTOOL_MSG_USER_NONE,
12   ETHTOOL_MSG_STRSET_GET,
13   ETHTOOL_MSG_LINKINFO_GET,
14   ETHTOOL_MSG_LINKINFO_SET,
15   ETHTOOL_MSG_LINKMODES_GET,
16   ETHTOOL_MSG_LINKMODES_SET,
17   ETHTOOL_MSG_LINKSTATE_GET,
18   ETHTOOL_MSG_DEBUG_GET,
19   ETHTOOL_MSG_DEBUG_SET,
20   ETHTOOL_MSG_WOL_GET,
21   ETHTOOL_MSG_WOL_SET,
22   ETHTOOL_MSG_FEATURES_GET,
23   ETHTOOL_MSG_FEATURES_SET,
24   ETHTOOL_MSG_PRIVFLAGS_GET,
25   ETHTOOL_MSG_PRIVFLAGS_SET,
26   ETHTOOL_MSG_RINGS_GET,
27   ETHTOOL_MSG_RINGS_SET,
28   ETHTOOL_MSG_CHANNELS_GET,
29   ETHTOOL_MSG_CHANNELS_SET,
30   ETHTOOL_MSG_COALESCE_GET,
31   ETHTOOL_MSG_COALESCE_SET,
32   ETHTOOL_MSG_PAUSE_GET,
33   ETHTOOL_MSG_PAUSE_SET,
34   ETHTOOL_MSG_EEE_GET,
35   ETHTOOL_MSG_EEE_SET,
36   ETHTOOL_MSG_TSINFO_GET,
37   ETHTOOL_MSG_CABLE_TEST_ACT,
38   ETHTOOL_MSG_CABLE_TEST_TDR_ACT,
39   ETHTOOL_MSG_TUNNEL_INFO_GET,
40   ETHTOOL_MSG_FEC_GET,
41   ETHTOOL_MSG_FEC_SET,
42   ETHTOOL_MSG_MODULE_EEPROM_GET,
43   ETHTOOL_MSG_STATS_GET,
44   ETHTOOL_MSG_PHC_VCLOCKS_GET,
45   ETHTOOL_MSG_MODULE_GET,
46   ETHTOOL_MSG_MODULE_SET,
47   ETHTOOL_MSG_PSE_GET,
48   ETHTOOL_MSG_PSE_SET,
49   ETHTOOL_MSG_RSS_GET,
50   ETHTOOL_MSG_PLCA_GET_CFG,
51   ETHTOOL_MSG_PLCA_SET_CFG,
52   ETHTOOL_MSG_PLCA_GET_STATUS,
53   ETHTOOL_MSG_MM_GET,
54   ETHTOOL_MSG_MM_SET,
55   ETHTOOL_MSG_MODULE_FW_FLASH_ACT,
56   ETHTOOL_MSG_PHY_GET,
57   __ETHTOOL_MSG_USER_CNT,
58   ETHTOOL_MSG_USER_MAX = __ETHTOOL_MSG_USER_CNT - 1
59 };
60 enum {
61   ETHTOOL_MSG_KERNEL_NONE,
62   ETHTOOL_MSG_STRSET_GET_REPLY,
63   ETHTOOL_MSG_LINKINFO_GET_REPLY,
64   ETHTOOL_MSG_LINKINFO_NTF,
65   ETHTOOL_MSG_LINKMODES_GET_REPLY,
66   ETHTOOL_MSG_LINKMODES_NTF,
67   ETHTOOL_MSG_LINKSTATE_GET_REPLY,
68   ETHTOOL_MSG_DEBUG_GET_REPLY,
69   ETHTOOL_MSG_DEBUG_NTF,
70   ETHTOOL_MSG_WOL_GET_REPLY,
71   ETHTOOL_MSG_WOL_NTF,
72   ETHTOOL_MSG_FEATURES_GET_REPLY,
73   ETHTOOL_MSG_FEATURES_SET_REPLY,
74   ETHTOOL_MSG_FEATURES_NTF,
75   ETHTOOL_MSG_PRIVFLAGS_GET_REPLY,
76   ETHTOOL_MSG_PRIVFLAGS_NTF,
77   ETHTOOL_MSG_RINGS_GET_REPLY,
78   ETHTOOL_MSG_RINGS_NTF,
79   ETHTOOL_MSG_CHANNELS_GET_REPLY,
80   ETHTOOL_MSG_CHANNELS_NTF,
81   ETHTOOL_MSG_COALESCE_GET_REPLY,
82   ETHTOOL_MSG_COALESCE_NTF,
83   ETHTOOL_MSG_PAUSE_GET_REPLY,
84   ETHTOOL_MSG_PAUSE_NTF,
85   ETHTOOL_MSG_EEE_GET_REPLY,
86   ETHTOOL_MSG_EEE_NTF,
87   ETHTOOL_MSG_TSINFO_GET_REPLY,
88   ETHTOOL_MSG_CABLE_TEST_NTF,
89   ETHTOOL_MSG_CABLE_TEST_TDR_NTF,
90   ETHTOOL_MSG_TUNNEL_INFO_GET_REPLY,
91   ETHTOOL_MSG_FEC_GET_REPLY,
92   ETHTOOL_MSG_FEC_NTF,
93   ETHTOOL_MSG_MODULE_EEPROM_GET_REPLY,
94   ETHTOOL_MSG_STATS_GET_REPLY,
95   ETHTOOL_MSG_PHC_VCLOCKS_GET_REPLY,
96   ETHTOOL_MSG_MODULE_GET_REPLY,
97   ETHTOOL_MSG_MODULE_NTF,
98   ETHTOOL_MSG_PSE_GET_REPLY,
99   ETHTOOL_MSG_RSS_GET_REPLY,
100   ETHTOOL_MSG_PLCA_GET_CFG_REPLY,
101   ETHTOOL_MSG_PLCA_GET_STATUS_REPLY,
102   ETHTOOL_MSG_PLCA_NTF,
103   ETHTOOL_MSG_MM_GET_REPLY,
104   ETHTOOL_MSG_MM_NTF,
105   ETHTOOL_MSG_MODULE_FW_FLASH_NTF,
106   ETHTOOL_MSG_PHY_GET_REPLY,
107   ETHTOOL_MSG_PHY_NTF,
108   __ETHTOOL_MSG_KERNEL_CNT,
109   ETHTOOL_MSG_KERNEL_MAX = __ETHTOOL_MSG_KERNEL_CNT - 1
110 };
111 enum ethtool_header_flags {
112   ETHTOOL_FLAG_COMPACT_BITSETS = 1 << 0,
113   ETHTOOL_FLAG_OMIT_REPLY = 1 << 1,
114   ETHTOOL_FLAG_STATS = 1 << 2,
115 };
116 #define ETHTOOL_FLAG_ALL (ETHTOOL_FLAG_COMPACT_BITSETS | ETHTOOL_FLAG_OMIT_REPLY | ETHTOOL_FLAG_STATS)
117 enum {
118   ETHTOOL_A_HEADER_UNSPEC,
119   ETHTOOL_A_HEADER_DEV_INDEX,
120   ETHTOOL_A_HEADER_DEV_NAME,
121   ETHTOOL_A_HEADER_FLAGS,
122   ETHTOOL_A_HEADER_PHY_INDEX,
123   __ETHTOOL_A_HEADER_CNT,
124   ETHTOOL_A_HEADER_MAX = __ETHTOOL_A_HEADER_CNT - 1
125 };
126 enum {
127   ETHTOOL_A_BITSET_BIT_UNSPEC,
128   ETHTOOL_A_BITSET_BIT_INDEX,
129   ETHTOOL_A_BITSET_BIT_NAME,
130   ETHTOOL_A_BITSET_BIT_VALUE,
131   __ETHTOOL_A_BITSET_BIT_CNT,
132   ETHTOOL_A_BITSET_BIT_MAX = __ETHTOOL_A_BITSET_BIT_CNT - 1
133 };
134 enum {
135   ETHTOOL_A_BITSET_BITS_UNSPEC,
136   ETHTOOL_A_BITSET_BITS_BIT,
137   __ETHTOOL_A_BITSET_BITS_CNT,
138   ETHTOOL_A_BITSET_BITS_MAX = __ETHTOOL_A_BITSET_BITS_CNT - 1
139 };
140 enum {
141   ETHTOOL_A_BITSET_UNSPEC,
142   ETHTOOL_A_BITSET_NOMASK,
143   ETHTOOL_A_BITSET_SIZE,
144   ETHTOOL_A_BITSET_BITS,
145   ETHTOOL_A_BITSET_VALUE,
146   ETHTOOL_A_BITSET_MASK,
147   __ETHTOOL_A_BITSET_CNT,
148   ETHTOOL_A_BITSET_MAX = __ETHTOOL_A_BITSET_CNT - 1
149 };
150 enum {
151   ETHTOOL_A_STRING_UNSPEC,
152   ETHTOOL_A_STRING_INDEX,
153   ETHTOOL_A_STRING_VALUE,
154   __ETHTOOL_A_STRING_CNT,
155   ETHTOOL_A_STRING_MAX = __ETHTOOL_A_STRING_CNT - 1
156 };
157 enum {
158   ETHTOOL_A_STRINGS_UNSPEC,
159   ETHTOOL_A_STRINGS_STRING,
160   __ETHTOOL_A_STRINGS_CNT,
161   ETHTOOL_A_STRINGS_MAX = __ETHTOOL_A_STRINGS_CNT - 1
162 };
163 enum {
164   ETHTOOL_A_STRINGSET_UNSPEC,
165   ETHTOOL_A_STRINGSET_ID,
166   ETHTOOL_A_STRINGSET_COUNT,
167   ETHTOOL_A_STRINGSET_STRINGS,
168   __ETHTOOL_A_STRINGSET_CNT,
169   ETHTOOL_A_STRINGSET_MAX = __ETHTOOL_A_STRINGSET_CNT - 1
170 };
171 enum {
172   ETHTOOL_A_STRINGSETS_UNSPEC,
173   ETHTOOL_A_STRINGSETS_STRINGSET,
174   __ETHTOOL_A_STRINGSETS_CNT,
175   ETHTOOL_A_STRINGSETS_MAX = __ETHTOOL_A_STRINGSETS_CNT - 1
176 };
177 enum {
178   ETHTOOL_A_STRSET_UNSPEC,
179   ETHTOOL_A_STRSET_HEADER,
180   ETHTOOL_A_STRSET_STRINGSETS,
181   ETHTOOL_A_STRSET_COUNTS_ONLY,
182   __ETHTOOL_A_STRSET_CNT,
183   ETHTOOL_A_STRSET_MAX = __ETHTOOL_A_STRSET_CNT - 1
184 };
185 enum {
186   ETHTOOL_A_LINKINFO_UNSPEC,
187   ETHTOOL_A_LINKINFO_HEADER,
188   ETHTOOL_A_LINKINFO_PORT,
189   ETHTOOL_A_LINKINFO_PHYADDR,
190   ETHTOOL_A_LINKINFO_TP_MDIX,
191   ETHTOOL_A_LINKINFO_TP_MDIX_CTRL,
192   ETHTOOL_A_LINKINFO_TRANSCEIVER,
193   __ETHTOOL_A_LINKINFO_CNT,
194   ETHTOOL_A_LINKINFO_MAX = __ETHTOOL_A_LINKINFO_CNT - 1
195 };
196 enum {
197   ETHTOOL_A_LINKMODES_UNSPEC,
198   ETHTOOL_A_LINKMODES_HEADER,
199   ETHTOOL_A_LINKMODES_AUTONEG,
200   ETHTOOL_A_LINKMODES_OURS,
201   ETHTOOL_A_LINKMODES_PEER,
202   ETHTOOL_A_LINKMODES_SPEED,
203   ETHTOOL_A_LINKMODES_DUPLEX,
204   ETHTOOL_A_LINKMODES_MASTER_SLAVE_CFG,
205   ETHTOOL_A_LINKMODES_MASTER_SLAVE_STATE,
206   ETHTOOL_A_LINKMODES_LANES,
207   ETHTOOL_A_LINKMODES_RATE_MATCHING,
208   __ETHTOOL_A_LINKMODES_CNT,
209   ETHTOOL_A_LINKMODES_MAX = __ETHTOOL_A_LINKMODES_CNT - 1
210 };
211 enum {
212   ETHTOOL_A_LINKSTATE_UNSPEC,
213   ETHTOOL_A_LINKSTATE_HEADER,
214   ETHTOOL_A_LINKSTATE_LINK,
215   ETHTOOL_A_LINKSTATE_SQI,
216   ETHTOOL_A_LINKSTATE_SQI_MAX,
217   ETHTOOL_A_LINKSTATE_EXT_STATE,
218   ETHTOOL_A_LINKSTATE_EXT_SUBSTATE,
219   ETHTOOL_A_LINKSTATE_EXT_DOWN_CNT,
220   __ETHTOOL_A_LINKSTATE_CNT,
221   ETHTOOL_A_LINKSTATE_MAX = __ETHTOOL_A_LINKSTATE_CNT - 1
222 };
223 enum {
224   ETHTOOL_A_DEBUG_UNSPEC,
225   ETHTOOL_A_DEBUG_HEADER,
226   ETHTOOL_A_DEBUG_MSGMASK,
227   __ETHTOOL_A_DEBUG_CNT,
228   ETHTOOL_A_DEBUG_MAX = __ETHTOOL_A_DEBUG_CNT - 1
229 };
230 enum {
231   ETHTOOL_A_WOL_UNSPEC,
232   ETHTOOL_A_WOL_HEADER,
233   ETHTOOL_A_WOL_MODES,
234   ETHTOOL_A_WOL_SOPASS,
235   __ETHTOOL_A_WOL_CNT,
236   ETHTOOL_A_WOL_MAX = __ETHTOOL_A_WOL_CNT - 1
237 };
238 enum {
239   ETHTOOL_A_FEATURES_UNSPEC,
240   ETHTOOL_A_FEATURES_HEADER,
241   ETHTOOL_A_FEATURES_HW,
242   ETHTOOL_A_FEATURES_WANTED,
243   ETHTOOL_A_FEATURES_ACTIVE,
244   ETHTOOL_A_FEATURES_NOCHANGE,
245   __ETHTOOL_A_FEATURES_CNT,
246   ETHTOOL_A_FEATURES_MAX = __ETHTOOL_A_FEATURES_CNT - 1
247 };
248 enum {
249   ETHTOOL_A_PRIVFLAGS_UNSPEC,
250   ETHTOOL_A_PRIVFLAGS_HEADER,
251   ETHTOOL_A_PRIVFLAGS_FLAGS,
252   __ETHTOOL_A_PRIVFLAGS_CNT,
253   ETHTOOL_A_PRIVFLAGS_MAX = __ETHTOOL_A_PRIVFLAGS_CNT - 1
254 };
255 enum {
256   ETHTOOL_TCP_DATA_SPLIT_UNKNOWN = 0,
257   ETHTOOL_TCP_DATA_SPLIT_DISABLED,
258   ETHTOOL_TCP_DATA_SPLIT_ENABLED,
259 };
260 enum {
261   ETHTOOL_A_RINGS_UNSPEC,
262   ETHTOOL_A_RINGS_HEADER,
263   ETHTOOL_A_RINGS_RX_MAX,
264   ETHTOOL_A_RINGS_RX_MINI_MAX,
265   ETHTOOL_A_RINGS_RX_JUMBO_MAX,
266   ETHTOOL_A_RINGS_TX_MAX,
267   ETHTOOL_A_RINGS_RX,
268   ETHTOOL_A_RINGS_RX_MINI,
269   ETHTOOL_A_RINGS_RX_JUMBO,
270   ETHTOOL_A_RINGS_TX,
271   ETHTOOL_A_RINGS_RX_BUF_LEN,
272   ETHTOOL_A_RINGS_TCP_DATA_SPLIT,
273   ETHTOOL_A_RINGS_CQE_SIZE,
274   ETHTOOL_A_RINGS_TX_PUSH,
275   ETHTOOL_A_RINGS_RX_PUSH,
276   ETHTOOL_A_RINGS_TX_PUSH_BUF_LEN,
277   ETHTOOL_A_RINGS_TX_PUSH_BUF_LEN_MAX,
278   __ETHTOOL_A_RINGS_CNT,
279   ETHTOOL_A_RINGS_MAX = (__ETHTOOL_A_RINGS_CNT - 1)
280 };
281 enum {
282   ETHTOOL_A_CHANNELS_UNSPEC,
283   ETHTOOL_A_CHANNELS_HEADER,
284   ETHTOOL_A_CHANNELS_RX_MAX,
285   ETHTOOL_A_CHANNELS_TX_MAX,
286   ETHTOOL_A_CHANNELS_OTHER_MAX,
287   ETHTOOL_A_CHANNELS_COMBINED_MAX,
288   ETHTOOL_A_CHANNELS_RX_COUNT,
289   ETHTOOL_A_CHANNELS_TX_COUNT,
290   ETHTOOL_A_CHANNELS_OTHER_COUNT,
291   ETHTOOL_A_CHANNELS_COMBINED_COUNT,
292   __ETHTOOL_A_CHANNELS_CNT,
293   ETHTOOL_A_CHANNELS_MAX = (__ETHTOOL_A_CHANNELS_CNT - 1)
294 };
295 enum {
296   ETHTOOL_A_COALESCE_UNSPEC,
297   ETHTOOL_A_COALESCE_HEADER,
298   ETHTOOL_A_COALESCE_RX_USECS,
299   ETHTOOL_A_COALESCE_RX_MAX_FRAMES,
300   ETHTOOL_A_COALESCE_RX_USECS_IRQ,
301   ETHTOOL_A_COALESCE_RX_MAX_FRAMES_IRQ,
302   ETHTOOL_A_COALESCE_TX_USECS,
303   ETHTOOL_A_COALESCE_TX_MAX_FRAMES,
304   ETHTOOL_A_COALESCE_TX_USECS_IRQ,
305   ETHTOOL_A_COALESCE_TX_MAX_FRAMES_IRQ,
306   ETHTOOL_A_COALESCE_STATS_BLOCK_USECS,
307   ETHTOOL_A_COALESCE_USE_ADAPTIVE_RX,
308   ETHTOOL_A_COALESCE_USE_ADAPTIVE_TX,
309   ETHTOOL_A_COALESCE_PKT_RATE_LOW,
310   ETHTOOL_A_COALESCE_RX_USECS_LOW,
311   ETHTOOL_A_COALESCE_RX_MAX_FRAMES_LOW,
312   ETHTOOL_A_COALESCE_TX_USECS_LOW,
313   ETHTOOL_A_COALESCE_TX_MAX_FRAMES_LOW,
314   ETHTOOL_A_COALESCE_PKT_RATE_HIGH,
315   ETHTOOL_A_COALESCE_RX_USECS_HIGH,
316   ETHTOOL_A_COALESCE_RX_MAX_FRAMES_HIGH,
317   ETHTOOL_A_COALESCE_TX_USECS_HIGH,
318   ETHTOOL_A_COALESCE_TX_MAX_FRAMES_HIGH,
319   ETHTOOL_A_COALESCE_RATE_SAMPLE_INTERVAL,
320   ETHTOOL_A_COALESCE_USE_CQE_MODE_TX,
321   ETHTOOL_A_COALESCE_USE_CQE_MODE_RX,
322   ETHTOOL_A_COALESCE_TX_AGGR_MAX_BYTES,
323   ETHTOOL_A_COALESCE_TX_AGGR_MAX_FRAMES,
324   ETHTOOL_A_COALESCE_TX_AGGR_TIME_USECS,
325   ETHTOOL_A_COALESCE_RX_PROFILE,
326   ETHTOOL_A_COALESCE_TX_PROFILE,
327   __ETHTOOL_A_COALESCE_CNT,
328   ETHTOOL_A_COALESCE_MAX = (__ETHTOOL_A_COALESCE_CNT - 1)
329 };
330 enum {
331   ETHTOOL_A_PROFILE_UNSPEC,
332   ETHTOOL_A_PROFILE_IRQ_MODERATION,
333   __ETHTOOL_A_PROFILE_CNT,
334   ETHTOOL_A_PROFILE_MAX = (__ETHTOOL_A_PROFILE_CNT - 1)
335 };
336 enum {
337   ETHTOOL_A_IRQ_MODERATION_UNSPEC,
338   ETHTOOL_A_IRQ_MODERATION_USEC,
339   ETHTOOL_A_IRQ_MODERATION_PKTS,
340   ETHTOOL_A_IRQ_MODERATION_COMPS,
341   __ETHTOOL_A_IRQ_MODERATION_CNT,
342   ETHTOOL_A_IRQ_MODERATION_MAX = (__ETHTOOL_A_IRQ_MODERATION_CNT - 1)
343 };
344 enum {
345   ETHTOOL_A_PAUSE_UNSPEC,
346   ETHTOOL_A_PAUSE_HEADER,
347   ETHTOOL_A_PAUSE_AUTONEG,
348   ETHTOOL_A_PAUSE_RX,
349   ETHTOOL_A_PAUSE_TX,
350   ETHTOOL_A_PAUSE_STATS,
351   ETHTOOL_A_PAUSE_STATS_SRC,
352   __ETHTOOL_A_PAUSE_CNT,
353   ETHTOOL_A_PAUSE_MAX = (__ETHTOOL_A_PAUSE_CNT - 1)
354 };
355 enum {
356   ETHTOOL_A_PAUSE_STAT_UNSPEC,
357   ETHTOOL_A_PAUSE_STAT_PAD,
358   ETHTOOL_A_PAUSE_STAT_TX_FRAMES,
359   ETHTOOL_A_PAUSE_STAT_RX_FRAMES,
360   __ETHTOOL_A_PAUSE_STAT_CNT,
361   ETHTOOL_A_PAUSE_STAT_MAX = (__ETHTOOL_A_PAUSE_STAT_CNT - 1)
362 };
363 enum {
364   ETHTOOL_A_EEE_UNSPEC,
365   ETHTOOL_A_EEE_HEADER,
366   ETHTOOL_A_EEE_MODES_OURS,
367   ETHTOOL_A_EEE_MODES_PEER,
368   ETHTOOL_A_EEE_ACTIVE,
369   ETHTOOL_A_EEE_ENABLED,
370   ETHTOOL_A_EEE_TX_LPI_ENABLED,
371   ETHTOOL_A_EEE_TX_LPI_TIMER,
372   __ETHTOOL_A_EEE_CNT,
373   ETHTOOL_A_EEE_MAX = (__ETHTOOL_A_EEE_CNT - 1)
374 };
375 enum {
376   ETHTOOL_A_TSINFO_UNSPEC,
377   ETHTOOL_A_TSINFO_HEADER,
378   ETHTOOL_A_TSINFO_TIMESTAMPING,
379   ETHTOOL_A_TSINFO_TX_TYPES,
380   ETHTOOL_A_TSINFO_RX_FILTERS,
381   ETHTOOL_A_TSINFO_PHC_INDEX,
382   ETHTOOL_A_TSINFO_STATS,
383   __ETHTOOL_A_TSINFO_CNT,
384   ETHTOOL_A_TSINFO_MAX = (__ETHTOOL_A_TSINFO_CNT - 1)
385 };
386 enum {
387   ETHTOOL_A_TS_STAT_UNSPEC,
388   ETHTOOL_A_TS_STAT_TX_PKTS,
389   ETHTOOL_A_TS_STAT_TX_LOST,
390   ETHTOOL_A_TS_STAT_TX_ERR,
391   __ETHTOOL_A_TS_STAT_CNT,
392   ETHTOOL_A_TS_STAT_MAX = (__ETHTOOL_A_TS_STAT_CNT - 1)
393 };
394 enum {
395   ETHTOOL_A_PHC_VCLOCKS_UNSPEC,
396   ETHTOOL_A_PHC_VCLOCKS_HEADER,
397   ETHTOOL_A_PHC_VCLOCKS_NUM,
398   ETHTOOL_A_PHC_VCLOCKS_INDEX,
399   __ETHTOOL_A_PHC_VCLOCKS_CNT,
400   ETHTOOL_A_PHC_VCLOCKS_MAX = (__ETHTOOL_A_PHC_VCLOCKS_CNT - 1)
401 };
402 enum {
403   ETHTOOL_A_CABLE_TEST_UNSPEC,
404   ETHTOOL_A_CABLE_TEST_HEADER,
405   __ETHTOOL_A_CABLE_TEST_CNT,
406   ETHTOOL_A_CABLE_TEST_MAX = __ETHTOOL_A_CABLE_TEST_CNT - 1
407 };
408 enum {
409   ETHTOOL_A_CABLE_RESULT_CODE_UNSPEC,
410   ETHTOOL_A_CABLE_RESULT_CODE_OK,
411   ETHTOOL_A_CABLE_RESULT_CODE_OPEN,
412   ETHTOOL_A_CABLE_RESULT_CODE_SAME_SHORT,
413   ETHTOOL_A_CABLE_RESULT_CODE_CROSS_SHORT,
414   ETHTOOL_A_CABLE_RESULT_CODE_IMPEDANCE_MISMATCH,
415   ETHTOOL_A_CABLE_RESULT_CODE_NOISE,
416   ETHTOOL_A_CABLE_RESULT_CODE_RESOLUTION_NOT_POSSIBLE,
417 };
418 enum {
419   ETHTOOL_A_CABLE_PAIR_A,
420   ETHTOOL_A_CABLE_PAIR_B,
421   ETHTOOL_A_CABLE_PAIR_C,
422   ETHTOOL_A_CABLE_PAIR_D,
423 };
424 enum {
425   ETHTOOL_A_CABLE_INF_SRC_UNSPEC,
426   ETHTOOL_A_CABLE_INF_SRC_TDR,
427   ETHTOOL_A_CABLE_INF_SRC_ALCD,
428 };
429 enum {
430   ETHTOOL_A_CABLE_RESULT_UNSPEC,
431   ETHTOOL_A_CABLE_RESULT_PAIR,
432   ETHTOOL_A_CABLE_RESULT_CODE,
433   ETHTOOL_A_CABLE_RESULT_SRC,
434   __ETHTOOL_A_CABLE_RESULT_CNT,
435   ETHTOOL_A_CABLE_RESULT_MAX = (__ETHTOOL_A_CABLE_RESULT_CNT - 1)
436 };
437 enum {
438   ETHTOOL_A_CABLE_FAULT_LENGTH_UNSPEC,
439   ETHTOOL_A_CABLE_FAULT_LENGTH_PAIR,
440   ETHTOOL_A_CABLE_FAULT_LENGTH_CM,
441   ETHTOOL_A_CABLE_FAULT_LENGTH_SRC,
442   __ETHTOOL_A_CABLE_FAULT_LENGTH_CNT,
443   ETHTOOL_A_CABLE_FAULT_LENGTH_MAX = (__ETHTOOL_A_CABLE_FAULT_LENGTH_CNT - 1)
444 };
445 enum {
446   ETHTOOL_A_CABLE_TEST_NTF_STATUS_UNSPEC,
447   ETHTOOL_A_CABLE_TEST_NTF_STATUS_STARTED,
448   ETHTOOL_A_CABLE_TEST_NTF_STATUS_COMPLETED
449 };
450 enum {
451   ETHTOOL_A_CABLE_NEST_UNSPEC,
452   ETHTOOL_A_CABLE_NEST_RESULT,
453   ETHTOOL_A_CABLE_NEST_FAULT_LENGTH,
454   __ETHTOOL_A_CABLE_NEST_CNT,
455   ETHTOOL_A_CABLE_NEST_MAX = (__ETHTOOL_A_CABLE_NEST_CNT - 1)
456 };
457 enum {
458   ETHTOOL_A_CABLE_TEST_NTF_UNSPEC,
459   ETHTOOL_A_CABLE_TEST_NTF_HEADER,
460   ETHTOOL_A_CABLE_TEST_NTF_STATUS,
461   ETHTOOL_A_CABLE_TEST_NTF_NEST,
462   __ETHTOOL_A_CABLE_TEST_NTF_CNT,
463   ETHTOOL_A_CABLE_TEST_NTF_MAX = (__ETHTOOL_A_CABLE_TEST_NTF_CNT - 1)
464 };
465 enum {
466   ETHTOOL_A_CABLE_TEST_TDR_CFG_UNSPEC,
467   ETHTOOL_A_CABLE_TEST_TDR_CFG_FIRST,
468   ETHTOOL_A_CABLE_TEST_TDR_CFG_LAST,
469   ETHTOOL_A_CABLE_TEST_TDR_CFG_STEP,
470   ETHTOOL_A_CABLE_TEST_TDR_CFG_PAIR,
471   __ETHTOOL_A_CABLE_TEST_TDR_CFG_CNT,
472   ETHTOOL_A_CABLE_TEST_TDR_CFG_MAX = __ETHTOOL_A_CABLE_TEST_TDR_CFG_CNT - 1
473 };
474 enum {
475   ETHTOOL_A_CABLE_TEST_TDR_UNSPEC,
476   ETHTOOL_A_CABLE_TEST_TDR_HEADER,
477   ETHTOOL_A_CABLE_TEST_TDR_CFG,
478   __ETHTOOL_A_CABLE_TEST_TDR_CNT,
479   ETHTOOL_A_CABLE_TEST_TDR_MAX = __ETHTOOL_A_CABLE_TEST_TDR_CNT - 1
480 };
481 enum {
482   ETHTOOL_A_CABLE_AMPLITUDE_UNSPEC,
483   ETHTOOL_A_CABLE_AMPLITUDE_PAIR,
484   ETHTOOL_A_CABLE_AMPLITUDE_mV,
485   __ETHTOOL_A_CABLE_AMPLITUDE_CNT,
486   ETHTOOL_A_CABLE_AMPLITUDE_MAX = (__ETHTOOL_A_CABLE_AMPLITUDE_CNT - 1)
487 };
488 enum {
489   ETHTOOL_A_CABLE_PULSE_UNSPEC,
490   ETHTOOL_A_CABLE_PULSE_mV,
491   __ETHTOOL_A_CABLE_PULSE_CNT,
492   ETHTOOL_A_CABLE_PULSE_MAX = (__ETHTOOL_A_CABLE_PULSE_CNT - 1)
493 };
494 enum {
495   ETHTOOL_A_CABLE_STEP_UNSPEC,
496   ETHTOOL_A_CABLE_STEP_FIRST_DISTANCE,
497   ETHTOOL_A_CABLE_STEP_LAST_DISTANCE,
498   ETHTOOL_A_CABLE_STEP_STEP_DISTANCE,
499   __ETHTOOL_A_CABLE_STEP_CNT,
500   ETHTOOL_A_CABLE_STEP_MAX = (__ETHTOOL_A_CABLE_STEP_CNT - 1)
501 };
502 enum {
503   ETHTOOL_A_CABLE_TDR_NEST_UNSPEC,
504   ETHTOOL_A_CABLE_TDR_NEST_STEP,
505   ETHTOOL_A_CABLE_TDR_NEST_AMPLITUDE,
506   ETHTOOL_A_CABLE_TDR_NEST_PULSE,
507   __ETHTOOL_A_CABLE_TDR_NEST_CNT,
508   ETHTOOL_A_CABLE_TDR_NEST_MAX = (__ETHTOOL_A_CABLE_TDR_NEST_CNT - 1)
509 };
510 enum {
511   ETHTOOL_A_CABLE_TEST_TDR_NTF_UNSPEC,
512   ETHTOOL_A_CABLE_TEST_TDR_NTF_HEADER,
513   ETHTOOL_A_CABLE_TEST_TDR_NTF_STATUS,
514   ETHTOOL_A_CABLE_TEST_TDR_NTF_NEST,
515   __ETHTOOL_A_CABLE_TEST_TDR_NTF_CNT,
516   ETHTOOL_A_CABLE_TEST_TDR_NTF_MAX = __ETHTOOL_A_CABLE_TEST_TDR_NTF_CNT - 1
517 };
518 enum {
519   ETHTOOL_UDP_TUNNEL_TYPE_VXLAN,
520   ETHTOOL_UDP_TUNNEL_TYPE_GENEVE,
521   ETHTOOL_UDP_TUNNEL_TYPE_VXLAN_GPE,
522   __ETHTOOL_UDP_TUNNEL_TYPE_CNT
523 };
524 enum {
525   ETHTOOL_A_TUNNEL_UDP_ENTRY_UNSPEC,
526   ETHTOOL_A_TUNNEL_UDP_ENTRY_PORT,
527   ETHTOOL_A_TUNNEL_UDP_ENTRY_TYPE,
528   __ETHTOOL_A_TUNNEL_UDP_ENTRY_CNT,
529   ETHTOOL_A_TUNNEL_UDP_ENTRY_MAX = (__ETHTOOL_A_TUNNEL_UDP_ENTRY_CNT - 1)
530 };
531 enum {
532   ETHTOOL_A_TUNNEL_UDP_TABLE_UNSPEC,
533   ETHTOOL_A_TUNNEL_UDP_TABLE_SIZE,
534   ETHTOOL_A_TUNNEL_UDP_TABLE_TYPES,
535   ETHTOOL_A_TUNNEL_UDP_TABLE_ENTRY,
536   __ETHTOOL_A_TUNNEL_UDP_TABLE_CNT,
537   ETHTOOL_A_TUNNEL_UDP_TABLE_MAX = (__ETHTOOL_A_TUNNEL_UDP_TABLE_CNT - 1)
538 };
539 enum {
540   ETHTOOL_A_TUNNEL_UDP_UNSPEC,
541   ETHTOOL_A_TUNNEL_UDP_TABLE,
542   __ETHTOOL_A_TUNNEL_UDP_CNT,
543   ETHTOOL_A_TUNNEL_UDP_MAX = (__ETHTOOL_A_TUNNEL_UDP_CNT - 1)
544 };
545 enum {
546   ETHTOOL_A_TUNNEL_INFO_UNSPEC,
547   ETHTOOL_A_TUNNEL_INFO_HEADER,
548   ETHTOOL_A_TUNNEL_INFO_UDP_PORTS,
549   __ETHTOOL_A_TUNNEL_INFO_CNT,
550   ETHTOOL_A_TUNNEL_INFO_MAX = (__ETHTOOL_A_TUNNEL_INFO_CNT - 1)
551 };
552 enum {
553   ETHTOOL_A_FEC_UNSPEC,
554   ETHTOOL_A_FEC_HEADER,
555   ETHTOOL_A_FEC_MODES,
556   ETHTOOL_A_FEC_AUTO,
557   ETHTOOL_A_FEC_ACTIVE,
558   ETHTOOL_A_FEC_STATS,
559   __ETHTOOL_A_FEC_CNT,
560   ETHTOOL_A_FEC_MAX = (__ETHTOOL_A_FEC_CNT - 1)
561 };
562 enum {
563   ETHTOOL_A_FEC_STAT_UNSPEC,
564   ETHTOOL_A_FEC_STAT_PAD,
565   ETHTOOL_A_FEC_STAT_CORRECTED,
566   ETHTOOL_A_FEC_STAT_UNCORR,
567   ETHTOOL_A_FEC_STAT_CORR_BITS,
568   __ETHTOOL_A_FEC_STAT_CNT,
569   ETHTOOL_A_FEC_STAT_MAX = (__ETHTOOL_A_FEC_STAT_CNT - 1)
570 };
571 enum {
572   ETHTOOL_A_MODULE_EEPROM_UNSPEC,
573   ETHTOOL_A_MODULE_EEPROM_HEADER,
574   ETHTOOL_A_MODULE_EEPROM_OFFSET,
575   ETHTOOL_A_MODULE_EEPROM_LENGTH,
576   ETHTOOL_A_MODULE_EEPROM_PAGE,
577   ETHTOOL_A_MODULE_EEPROM_BANK,
578   ETHTOOL_A_MODULE_EEPROM_I2C_ADDRESS,
579   ETHTOOL_A_MODULE_EEPROM_DATA,
580   __ETHTOOL_A_MODULE_EEPROM_CNT,
581   ETHTOOL_A_MODULE_EEPROM_MAX = (__ETHTOOL_A_MODULE_EEPROM_CNT - 1)
582 };
583 enum {
584   ETHTOOL_A_STATS_UNSPEC,
585   ETHTOOL_A_STATS_PAD,
586   ETHTOOL_A_STATS_HEADER,
587   ETHTOOL_A_STATS_GROUPS,
588   ETHTOOL_A_STATS_GRP,
589   ETHTOOL_A_STATS_SRC,
590   __ETHTOOL_A_STATS_CNT,
591   ETHTOOL_A_STATS_MAX = (__ETHTOOL_A_STATS_CNT - 1)
592 };
593 enum {
594   ETHTOOL_STATS_ETH_PHY,
595   ETHTOOL_STATS_ETH_MAC,
596   ETHTOOL_STATS_ETH_CTRL,
597   ETHTOOL_STATS_RMON,
598   __ETHTOOL_STATS_CNT
599 };
600 enum {
601   ETHTOOL_A_STATS_GRP_UNSPEC,
602   ETHTOOL_A_STATS_GRP_PAD,
603   ETHTOOL_A_STATS_GRP_ID,
604   ETHTOOL_A_STATS_GRP_SS_ID,
605   ETHTOOL_A_STATS_GRP_STAT,
606   ETHTOOL_A_STATS_GRP_HIST_RX,
607   ETHTOOL_A_STATS_GRP_HIST_TX,
608   ETHTOOL_A_STATS_GRP_HIST_BKT_LOW,
609   ETHTOOL_A_STATS_GRP_HIST_BKT_HI,
610   ETHTOOL_A_STATS_GRP_HIST_VAL,
611   __ETHTOOL_A_STATS_GRP_CNT,
612   ETHTOOL_A_STATS_GRP_MAX = (__ETHTOOL_A_STATS_GRP_CNT - 1)
613 };
614 enum {
615   ETHTOOL_A_STATS_ETH_PHY_5_SYM_ERR,
616   __ETHTOOL_A_STATS_ETH_PHY_CNT,
617   ETHTOOL_A_STATS_ETH_PHY_MAX = (__ETHTOOL_A_STATS_ETH_PHY_CNT - 1)
618 };
619 enum {
620   ETHTOOL_A_STATS_ETH_MAC_2_TX_PKT,
621   ETHTOOL_A_STATS_ETH_MAC_3_SINGLE_COL,
622   ETHTOOL_A_STATS_ETH_MAC_4_MULTI_COL,
623   ETHTOOL_A_STATS_ETH_MAC_5_RX_PKT,
624   ETHTOOL_A_STATS_ETH_MAC_6_FCS_ERR,
625   ETHTOOL_A_STATS_ETH_MAC_7_ALIGN_ERR,
626   ETHTOOL_A_STATS_ETH_MAC_8_TX_BYTES,
627   ETHTOOL_A_STATS_ETH_MAC_9_TX_DEFER,
628   ETHTOOL_A_STATS_ETH_MAC_10_LATE_COL,
629   ETHTOOL_A_STATS_ETH_MAC_11_XS_COL,
630   ETHTOOL_A_STATS_ETH_MAC_12_TX_INT_ERR,
631   ETHTOOL_A_STATS_ETH_MAC_13_CS_ERR,
632   ETHTOOL_A_STATS_ETH_MAC_14_RX_BYTES,
633   ETHTOOL_A_STATS_ETH_MAC_15_RX_INT_ERR,
634   ETHTOOL_A_STATS_ETH_MAC_18_TX_MCAST,
635   ETHTOOL_A_STATS_ETH_MAC_19_TX_BCAST,
636   ETHTOOL_A_STATS_ETH_MAC_20_XS_DEFER,
637   ETHTOOL_A_STATS_ETH_MAC_21_RX_MCAST,
638   ETHTOOL_A_STATS_ETH_MAC_22_RX_BCAST,
639   ETHTOOL_A_STATS_ETH_MAC_23_IR_LEN_ERR,
640   ETHTOOL_A_STATS_ETH_MAC_24_OOR_LEN,
641   ETHTOOL_A_STATS_ETH_MAC_25_TOO_LONG_ERR,
642   __ETHTOOL_A_STATS_ETH_MAC_CNT,
643   ETHTOOL_A_STATS_ETH_MAC_MAX = (__ETHTOOL_A_STATS_ETH_MAC_CNT - 1)
644 };
645 enum {
646   ETHTOOL_A_STATS_ETH_CTRL_3_TX,
647   ETHTOOL_A_STATS_ETH_CTRL_4_RX,
648   ETHTOOL_A_STATS_ETH_CTRL_5_RX_UNSUP,
649   __ETHTOOL_A_STATS_ETH_CTRL_CNT,
650   ETHTOOL_A_STATS_ETH_CTRL_MAX = (__ETHTOOL_A_STATS_ETH_CTRL_CNT - 1)
651 };
652 enum {
653   ETHTOOL_A_STATS_RMON_UNDERSIZE,
654   ETHTOOL_A_STATS_RMON_OVERSIZE,
655   ETHTOOL_A_STATS_RMON_FRAG,
656   ETHTOOL_A_STATS_RMON_JABBER,
657   __ETHTOOL_A_STATS_RMON_CNT,
658   ETHTOOL_A_STATS_RMON_MAX = (__ETHTOOL_A_STATS_RMON_CNT - 1)
659 };
660 enum {
661   ETHTOOL_A_MODULE_UNSPEC,
662   ETHTOOL_A_MODULE_HEADER,
663   ETHTOOL_A_MODULE_POWER_MODE_POLICY,
664   ETHTOOL_A_MODULE_POWER_MODE,
665   __ETHTOOL_A_MODULE_CNT,
666   ETHTOOL_A_MODULE_MAX = (__ETHTOOL_A_MODULE_CNT - 1)
667 };
668 enum {
669   ETHTOOL_A_C33_PSE_PW_LIMIT_UNSPEC,
670   ETHTOOL_A_C33_PSE_PW_LIMIT_MIN,
671   ETHTOOL_A_C33_PSE_PW_LIMIT_MAX,
672 };
673 enum {
674   ETHTOOL_A_PSE_UNSPEC,
675   ETHTOOL_A_PSE_HEADER,
676   ETHTOOL_A_PODL_PSE_ADMIN_STATE,
677   ETHTOOL_A_PODL_PSE_ADMIN_CONTROL,
678   ETHTOOL_A_PODL_PSE_PW_D_STATUS,
679   ETHTOOL_A_C33_PSE_ADMIN_STATE,
680   ETHTOOL_A_C33_PSE_ADMIN_CONTROL,
681   ETHTOOL_A_C33_PSE_PW_D_STATUS,
682   ETHTOOL_A_C33_PSE_PW_CLASS,
683   ETHTOOL_A_C33_PSE_ACTUAL_PW,
684   ETHTOOL_A_C33_PSE_EXT_STATE,
685   ETHTOOL_A_C33_PSE_EXT_SUBSTATE,
686   ETHTOOL_A_C33_PSE_AVAIL_PW_LIMIT,
687   ETHTOOL_A_C33_PSE_PW_LIMIT_RANGES,
688   __ETHTOOL_A_PSE_CNT,
689   ETHTOOL_A_PSE_MAX = (__ETHTOOL_A_PSE_CNT - 1)
690 };
691 enum {
692   ETHTOOL_A_RSS_UNSPEC,
693   ETHTOOL_A_RSS_HEADER,
694   ETHTOOL_A_RSS_CONTEXT,
695   ETHTOOL_A_RSS_HFUNC,
696   ETHTOOL_A_RSS_INDIR,
697   ETHTOOL_A_RSS_HKEY,
698   ETHTOOL_A_RSS_INPUT_XFRM,
699   ETHTOOL_A_RSS_START_CONTEXT,
700   __ETHTOOL_A_RSS_CNT,
701   ETHTOOL_A_RSS_MAX = (__ETHTOOL_A_RSS_CNT - 1),
702 };
703 enum {
704   ETHTOOL_A_PLCA_UNSPEC,
705   ETHTOOL_A_PLCA_HEADER,
706   ETHTOOL_A_PLCA_VERSION,
707   ETHTOOL_A_PLCA_ENABLED,
708   ETHTOOL_A_PLCA_STATUS,
709   ETHTOOL_A_PLCA_NODE_CNT,
710   ETHTOOL_A_PLCA_NODE_ID,
711   ETHTOOL_A_PLCA_TO_TMR,
712   ETHTOOL_A_PLCA_BURST_CNT,
713   ETHTOOL_A_PLCA_BURST_TMR,
714   __ETHTOOL_A_PLCA_CNT,
715   ETHTOOL_A_PLCA_MAX = (__ETHTOOL_A_PLCA_CNT - 1)
716 };
717 enum {
718   ETHTOOL_A_MM_STAT_UNSPEC,
719   ETHTOOL_A_MM_STAT_PAD,
720   ETHTOOL_A_MM_STAT_REASSEMBLY_ERRORS,
721   ETHTOOL_A_MM_STAT_SMD_ERRORS,
722   ETHTOOL_A_MM_STAT_REASSEMBLY_OK,
723   ETHTOOL_A_MM_STAT_RX_FRAG_COUNT,
724   ETHTOOL_A_MM_STAT_TX_FRAG_COUNT,
725   ETHTOOL_A_MM_STAT_HOLD_COUNT,
726   __ETHTOOL_A_MM_STAT_CNT,
727   ETHTOOL_A_MM_STAT_MAX = (__ETHTOOL_A_MM_STAT_CNT - 1)
728 };
729 enum {
730   ETHTOOL_A_MM_UNSPEC,
731   ETHTOOL_A_MM_HEADER,
732   ETHTOOL_A_MM_PMAC_ENABLED,
733   ETHTOOL_A_MM_TX_ENABLED,
734   ETHTOOL_A_MM_TX_ACTIVE,
735   ETHTOOL_A_MM_TX_MIN_FRAG_SIZE,
736   ETHTOOL_A_MM_RX_MIN_FRAG_SIZE,
737   ETHTOOL_A_MM_VERIFY_ENABLED,
738   ETHTOOL_A_MM_VERIFY_STATUS,
739   ETHTOOL_A_MM_VERIFY_TIME,
740   ETHTOOL_A_MM_MAX_VERIFY_TIME,
741   ETHTOOL_A_MM_STATS,
742   __ETHTOOL_A_MM_CNT,
743   ETHTOOL_A_MM_MAX = (__ETHTOOL_A_MM_CNT - 1)
744 };
745 enum {
746   ETHTOOL_A_MODULE_FW_FLASH_UNSPEC,
747   ETHTOOL_A_MODULE_FW_FLASH_HEADER,
748   ETHTOOL_A_MODULE_FW_FLASH_FILE_NAME,
749   ETHTOOL_A_MODULE_FW_FLASH_PASSWORD,
750   ETHTOOL_A_MODULE_FW_FLASH_STATUS,
751   ETHTOOL_A_MODULE_FW_FLASH_STATUS_MSG,
752   ETHTOOL_A_MODULE_FW_FLASH_DONE,
753   ETHTOOL_A_MODULE_FW_FLASH_TOTAL,
754   __ETHTOOL_A_MODULE_FW_FLASH_CNT,
755   ETHTOOL_A_MODULE_FW_FLASH_MAX = (__ETHTOOL_A_MODULE_FW_FLASH_CNT - 1)
756 };
757 enum {
758   ETHTOOL_A_PHY_UNSPEC,
759   ETHTOOL_A_PHY_HEADER,
760   ETHTOOL_A_PHY_INDEX,
761   ETHTOOL_A_PHY_DRVNAME,
762   ETHTOOL_A_PHY_NAME,
763   ETHTOOL_A_PHY_UPSTREAM_TYPE,
764   ETHTOOL_A_PHY_UPSTREAM_INDEX,
765   ETHTOOL_A_PHY_UPSTREAM_SFP_NAME,
766   ETHTOOL_A_PHY_DOWNSTREAM_SFP_NAME,
767   __ETHTOOL_A_PHY_CNT,
768   ETHTOOL_A_PHY_MAX = (__ETHTOOL_A_PHY_CNT - 1)
769 };
770 #define ETHTOOL_GENL_NAME "ethtool"
771 #define ETHTOOL_GENL_VERSION 1
772 #define ETHTOOL_MCGRP_MONITOR_NAME "monitor"
773 #endif
774