blob: c5012d2410ac62ed303342621d27a1ebd5d479ee [file] [log] [blame]
Elliott Hughes180edef2023-11-02 00:08:05 +00001/*
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 */
Christopher Ferrisbb9fcb42020-04-06 11:38:04 -07007#ifndef _UAPI_LINUX_ETHTOOL_NETLINK_H_
8#define _UAPI_LINUX_ETHTOOL_NETLINK_H_
9#include <linux/ethtool.h>
10enum {
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,
Christopher Ferrisaf09c702020-06-01 20:29:29 -070022 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,
Christopher Ferris8177cdf2020-08-03 11:53:55 -070037 ETHTOOL_MSG_CABLE_TEST_ACT,
38 ETHTOOL_MSG_CABLE_TEST_TDR_ACT,
Christopher Ferris25c18d42020-10-14 17:42:58 -070039 ETHTOOL_MSG_TUNNEL_INFO_GET,
Christopher Ferrisfcc3b4f2021-07-01 01:30:21 +000040 ETHTOOL_MSG_FEC_GET,
41 ETHTOOL_MSG_FEC_SET,
42 ETHTOOL_MSG_MODULE_EEPROM_GET,
43 ETHTOOL_MSG_STATS_GET,
Christopher Ferris3a39c0b2021-09-02 00:03:38 +000044 ETHTOOL_MSG_PHC_VCLOCKS_GET,
Christopher Ferrisa4792612022-01-10 13:51:15 -080045 ETHTOOL_MSG_MODULE_GET,
46 ETHTOOL_MSG_MODULE_SET,
Christopher Ferris6cd53a52022-12-12 23:39:16 +000047 ETHTOOL_MSG_PSE_GET,
48 ETHTOOL_MSG_PSE_SET,
Christopher Ferris8b7fdc92023-02-21 13:36:32 -080049 ETHTOOL_MSG_RSS_GET,
Christopher Ferrisb7cef6d2023-05-09 19:04:15 +000050 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,
Christopher Ferrisbb9fcb42020-04-06 11:38:04 -070055 __ETHTOOL_MSG_USER_CNT,
56 ETHTOOL_MSG_USER_MAX = __ETHTOOL_MSG_USER_CNT - 1
57};
58enum {
59 ETHTOOL_MSG_KERNEL_NONE,
60 ETHTOOL_MSG_STRSET_GET_REPLY,
61 ETHTOOL_MSG_LINKINFO_GET_REPLY,
62 ETHTOOL_MSG_LINKINFO_NTF,
63 ETHTOOL_MSG_LINKMODES_GET_REPLY,
64 ETHTOOL_MSG_LINKMODES_NTF,
65 ETHTOOL_MSG_LINKSTATE_GET_REPLY,
66 ETHTOOL_MSG_DEBUG_GET_REPLY,
67 ETHTOOL_MSG_DEBUG_NTF,
68 ETHTOOL_MSG_WOL_GET_REPLY,
69 ETHTOOL_MSG_WOL_NTF,
Christopher Ferrisaf09c702020-06-01 20:29:29 -070070 ETHTOOL_MSG_FEATURES_GET_REPLY,
71 ETHTOOL_MSG_FEATURES_SET_REPLY,
72 ETHTOOL_MSG_FEATURES_NTF,
73 ETHTOOL_MSG_PRIVFLAGS_GET_REPLY,
74 ETHTOOL_MSG_PRIVFLAGS_NTF,
75 ETHTOOL_MSG_RINGS_GET_REPLY,
76 ETHTOOL_MSG_RINGS_NTF,
77 ETHTOOL_MSG_CHANNELS_GET_REPLY,
78 ETHTOOL_MSG_CHANNELS_NTF,
79 ETHTOOL_MSG_COALESCE_GET_REPLY,
80 ETHTOOL_MSG_COALESCE_NTF,
81 ETHTOOL_MSG_PAUSE_GET_REPLY,
82 ETHTOOL_MSG_PAUSE_NTF,
83 ETHTOOL_MSG_EEE_GET_REPLY,
84 ETHTOOL_MSG_EEE_NTF,
85 ETHTOOL_MSG_TSINFO_GET_REPLY,
Christopher Ferris8177cdf2020-08-03 11:53:55 -070086 ETHTOOL_MSG_CABLE_TEST_NTF,
87 ETHTOOL_MSG_CABLE_TEST_TDR_NTF,
Christopher Ferris25c18d42020-10-14 17:42:58 -070088 ETHTOOL_MSG_TUNNEL_INFO_GET_REPLY,
Christopher Ferrisfcc3b4f2021-07-01 01:30:21 +000089 ETHTOOL_MSG_FEC_GET_REPLY,
90 ETHTOOL_MSG_FEC_NTF,
91 ETHTOOL_MSG_MODULE_EEPROM_GET_REPLY,
92 ETHTOOL_MSG_STATS_GET_REPLY,
Christopher Ferris3a39c0b2021-09-02 00:03:38 +000093 ETHTOOL_MSG_PHC_VCLOCKS_GET_REPLY,
Christopher Ferrisa4792612022-01-10 13:51:15 -080094 ETHTOOL_MSG_MODULE_GET_REPLY,
95 ETHTOOL_MSG_MODULE_NTF,
Christopher Ferris6cd53a52022-12-12 23:39:16 +000096 ETHTOOL_MSG_PSE_GET_REPLY,
Christopher Ferris8b7fdc92023-02-21 13:36:32 -080097 ETHTOOL_MSG_RSS_GET_REPLY,
Christopher Ferrisb7cef6d2023-05-09 19:04:15 +000098 ETHTOOL_MSG_PLCA_GET_CFG_REPLY,
99 ETHTOOL_MSG_PLCA_GET_STATUS_REPLY,
100 ETHTOOL_MSG_PLCA_NTF,
101 ETHTOOL_MSG_MM_GET_REPLY,
102 ETHTOOL_MSG_MM_NTF,
Christopher Ferrisbb9fcb42020-04-06 11:38:04 -0700103 __ETHTOOL_MSG_KERNEL_CNT,
104 ETHTOOL_MSG_KERNEL_MAX = __ETHTOOL_MSG_KERNEL_CNT - 1
105};
106#define ETHTOOL_FLAG_COMPACT_BITSETS (1 << 0)
107#define ETHTOOL_FLAG_OMIT_REPLY (1 << 1)
Christopher Ferris32ff3f82020-12-14 13:10:04 -0800108#define ETHTOOL_FLAG_STATS (1 << 2)
109#define ETHTOOL_FLAG_ALL (ETHTOOL_FLAG_COMPACT_BITSETS | ETHTOOL_FLAG_OMIT_REPLY | ETHTOOL_FLAG_STATS)
Christopher Ferrisbb9fcb42020-04-06 11:38:04 -0700110enum {
111 ETHTOOL_A_HEADER_UNSPEC,
112 ETHTOOL_A_HEADER_DEV_INDEX,
113 ETHTOOL_A_HEADER_DEV_NAME,
114 ETHTOOL_A_HEADER_FLAGS,
115 __ETHTOOL_A_HEADER_CNT,
116 ETHTOOL_A_HEADER_MAX = __ETHTOOL_A_HEADER_CNT - 1
117};
118enum {
119 ETHTOOL_A_BITSET_BIT_UNSPEC,
120 ETHTOOL_A_BITSET_BIT_INDEX,
121 ETHTOOL_A_BITSET_BIT_NAME,
122 ETHTOOL_A_BITSET_BIT_VALUE,
123 __ETHTOOL_A_BITSET_BIT_CNT,
124 ETHTOOL_A_BITSET_BIT_MAX = __ETHTOOL_A_BITSET_BIT_CNT - 1
125};
126enum {
127 ETHTOOL_A_BITSET_BITS_UNSPEC,
128 ETHTOOL_A_BITSET_BITS_BIT,
129 __ETHTOOL_A_BITSET_BITS_CNT,
130 ETHTOOL_A_BITSET_BITS_MAX = __ETHTOOL_A_BITSET_BITS_CNT - 1
131};
132enum {
133 ETHTOOL_A_BITSET_UNSPEC,
134 ETHTOOL_A_BITSET_NOMASK,
135 ETHTOOL_A_BITSET_SIZE,
136 ETHTOOL_A_BITSET_BITS,
137 ETHTOOL_A_BITSET_VALUE,
138 ETHTOOL_A_BITSET_MASK,
139 __ETHTOOL_A_BITSET_CNT,
140 ETHTOOL_A_BITSET_MAX = __ETHTOOL_A_BITSET_CNT - 1
141};
142enum {
143 ETHTOOL_A_STRING_UNSPEC,
144 ETHTOOL_A_STRING_INDEX,
145 ETHTOOL_A_STRING_VALUE,
146 __ETHTOOL_A_STRING_CNT,
147 ETHTOOL_A_STRING_MAX = __ETHTOOL_A_STRING_CNT - 1
148};
149enum {
150 ETHTOOL_A_STRINGS_UNSPEC,
151 ETHTOOL_A_STRINGS_STRING,
152 __ETHTOOL_A_STRINGS_CNT,
153 ETHTOOL_A_STRINGS_MAX = __ETHTOOL_A_STRINGS_CNT - 1
154};
155enum {
156 ETHTOOL_A_STRINGSET_UNSPEC,
157 ETHTOOL_A_STRINGSET_ID,
158 ETHTOOL_A_STRINGSET_COUNT,
159 ETHTOOL_A_STRINGSET_STRINGS,
160 __ETHTOOL_A_STRINGSET_CNT,
161 ETHTOOL_A_STRINGSET_MAX = __ETHTOOL_A_STRINGSET_CNT - 1
162};
163enum {
164 ETHTOOL_A_STRINGSETS_UNSPEC,
165 ETHTOOL_A_STRINGSETS_STRINGSET,
166 __ETHTOOL_A_STRINGSETS_CNT,
167 ETHTOOL_A_STRINGSETS_MAX = __ETHTOOL_A_STRINGSETS_CNT - 1
168};
169enum {
170 ETHTOOL_A_STRSET_UNSPEC,
171 ETHTOOL_A_STRSET_HEADER,
172 ETHTOOL_A_STRSET_STRINGSETS,
173 ETHTOOL_A_STRSET_COUNTS_ONLY,
174 __ETHTOOL_A_STRSET_CNT,
175 ETHTOOL_A_STRSET_MAX = __ETHTOOL_A_STRSET_CNT - 1
176};
177enum {
178 ETHTOOL_A_LINKINFO_UNSPEC,
179 ETHTOOL_A_LINKINFO_HEADER,
180 ETHTOOL_A_LINKINFO_PORT,
181 ETHTOOL_A_LINKINFO_PHYADDR,
182 ETHTOOL_A_LINKINFO_TP_MDIX,
183 ETHTOOL_A_LINKINFO_TP_MDIX_CTRL,
184 ETHTOOL_A_LINKINFO_TRANSCEIVER,
185 __ETHTOOL_A_LINKINFO_CNT,
186 ETHTOOL_A_LINKINFO_MAX = __ETHTOOL_A_LINKINFO_CNT - 1
187};
188enum {
189 ETHTOOL_A_LINKMODES_UNSPEC,
190 ETHTOOL_A_LINKMODES_HEADER,
191 ETHTOOL_A_LINKMODES_AUTONEG,
192 ETHTOOL_A_LINKMODES_OURS,
193 ETHTOOL_A_LINKMODES_PEER,
194 ETHTOOL_A_LINKMODES_SPEED,
195 ETHTOOL_A_LINKMODES_DUPLEX,
Christopher Ferris8177cdf2020-08-03 11:53:55 -0700196 ETHTOOL_A_LINKMODES_MASTER_SLAVE_CFG,
197 ETHTOOL_A_LINKMODES_MASTER_SLAVE_STATE,
Christopher Ferrisa9750ed2021-05-03 14:02:49 -0700198 ETHTOOL_A_LINKMODES_LANES,
Christopher Ferris6cd53a52022-12-12 23:39:16 +0000199 ETHTOOL_A_LINKMODES_RATE_MATCHING,
Christopher Ferrisbb9fcb42020-04-06 11:38:04 -0700200 __ETHTOOL_A_LINKMODES_CNT,
201 ETHTOOL_A_LINKMODES_MAX = __ETHTOOL_A_LINKMODES_CNT - 1
202};
203enum {
204 ETHTOOL_A_LINKSTATE_UNSPEC,
205 ETHTOOL_A_LINKSTATE_HEADER,
206 ETHTOOL_A_LINKSTATE_LINK,
Christopher Ferris8177cdf2020-08-03 11:53:55 -0700207 ETHTOOL_A_LINKSTATE_SQI,
208 ETHTOOL_A_LINKSTATE_SQI_MAX,
Christopher Ferris25c18d42020-10-14 17:42:58 -0700209 ETHTOOL_A_LINKSTATE_EXT_STATE,
210 ETHTOOL_A_LINKSTATE_EXT_SUBSTATE,
Christopher Ferris8b7fdc92023-02-21 13:36:32 -0800211 ETHTOOL_A_LINKSTATE_EXT_DOWN_CNT,
Christopher Ferrisbb9fcb42020-04-06 11:38:04 -0700212 __ETHTOOL_A_LINKSTATE_CNT,
213 ETHTOOL_A_LINKSTATE_MAX = __ETHTOOL_A_LINKSTATE_CNT - 1
214};
215enum {
216 ETHTOOL_A_DEBUG_UNSPEC,
217 ETHTOOL_A_DEBUG_HEADER,
218 ETHTOOL_A_DEBUG_MSGMASK,
219 __ETHTOOL_A_DEBUG_CNT,
220 ETHTOOL_A_DEBUG_MAX = __ETHTOOL_A_DEBUG_CNT - 1
221};
222enum {
223 ETHTOOL_A_WOL_UNSPEC,
224 ETHTOOL_A_WOL_HEADER,
225 ETHTOOL_A_WOL_MODES,
226 ETHTOOL_A_WOL_SOPASS,
227 __ETHTOOL_A_WOL_CNT,
228 ETHTOOL_A_WOL_MAX = __ETHTOOL_A_WOL_CNT - 1
229};
Christopher Ferrisaf09c702020-06-01 20:29:29 -0700230enum {
231 ETHTOOL_A_FEATURES_UNSPEC,
232 ETHTOOL_A_FEATURES_HEADER,
233 ETHTOOL_A_FEATURES_HW,
234 ETHTOOL_A_FEATURES_WANTED,
235 ETHTOOL_A_FEATURES_ACTIVE,
236 ETHTOOL_A_FEATURES_NOCHANGE,
237 __ETHTOOL_A_FEATURES_CNT,
238 ETHTOOL_A_FEATURES_MAX = __ETHTOOL_A_FEATURES_CNT - 1
239};
240enum {
241 ETHTOOL_A_PRIVFLAGS_UNSPEC,
242 ETHTOOL_A_PRIVFLAGS_HEADER,
243 ETHTOOL_A_PRIVFLAGS_FLAGS,
244 __ETHTOOL_A_PRIVFLAGS_CNT,
245 ETHTOOL_A_PRIVFLAGS_MAX = __ETHTOOL_A_PRIVFLAGS_CNT - 1
246};
247enum {
Christopher Ferris10a76e62022-06-08 13:31:52 -0700248 ETHTOOL_TCP_DATA_SPLIT_UNKNOWN = 0,
249 ETHTOOL_TCP_DATA_SPLIT_DISABLED,
250 ETHTOOL_TCP_DATA_SPLIT_ENABLED,
251};
252enum {
Christopher Ferrisaf09c702020-06-01 20:29:29 -0700253 ETHTOOL_A_RINGS_UNSPEC,
254 ETHTOOL_A_RINGS_HEADER,
255 ETHTOOL_A_RINGS_RX_MAX,
256 ETHTOOL_A_RINGS_RX_MINI_MAX,
257 ETHTOOL_A_RINGS_RX_JUMBO_MAX,
258 ETHTOOL_A_RINGS_TX_MAX,
259 ETHTOOL_A_RINGS_RX,
260 ETHTOOL_A_RINGS_RX_MINI,
261 ETHTOOL_A_RINGS_RX_JUMBO,
262 ETHTOOL_A_RINGS_TX,
Christopher Ferris1ed55342022-03-22 16:06:25 -0700263 ETHTOOL_A_RINGS_RX_BUF_LEN,
Christopher Ferris10a76e62022-06-08 13:31:52 -0700264 ETHTOOL_A_RINGS_TCP_DATA_SPLIT,
265 ETHTOOL_A_RINGS_CQE_SIZE,
Christopher Ferris80ae69d2022-08-02 16:32:21 -0700266 ETHTOOL_A_RINGS_TX_PUSH,
Christopher Ferrisb7cef6d2023-05-09 19:04:15 +0000267 ETHTOOL_A_RINGS_RX_PUSH,
Christopher Ferris37c3f3c2023-07-10 10:59:05 -0700268 ETHTOOL_A_RINGS_TX_PUSH_BUF_LEN,
269 ETHTOOL_A_RINGS_TX_PUSH_BUF_LEN_MAX,
Christopher Ferrisaf09c702020-06-01 20:29:29 -0700270 __ETHTOOL_A_RINGS_CNT,
271 ETHTOOL_A_RINGS_MAX = (__ETHTOOL_A_RINGS_CNT - 1)
272};
273enum {
274 ETHTOOL_A_CHANNELS_UNSPEC,
275 ETHTOOL_A_CHANNELS_HEADER,
276 ETHTOOL_A_CHANNELS_RX_MAX,
277 ETHTOOL_A_CHANNELS_TX_MAX,
278 ETHTOOL_A_CHANNELS_OTHER_MAX,
279 ETHTOOL_A_CHANNELS_COMBINED_MAX,
280 ETHTOOL_A_CHANNELS_RX_COUNT,
281 ETHTOOL_A_CHANNELS_TX_COUNT,
282 ETHTOOL_A_CHANNELS_OTHER_COUNT,
283 ETHTOOL_A_CHANNELS_COMBINED_COUNT,
284 __ETHTOOL_A_CHANNELS_CNT,
285 ETHTOOL_A_CHANNELS_MAX = (__ETHTOOL_A_CHANNELS_CNT - 1)
286};
287enum {
288 ETHTOOL_A_COALESCE_UNSPEC,
289 ETHTOOL_A_COALESCE_HEADER,
290 ETHTOOL_A_COALESCE_RX_USECS,
291 ETHTOOL_A_COALESCE_RX_MAX_FRAMES,
292 ETHTOOL_A_COALESCE_RX_USECS_IRQ,
293 ETHTOOL_A_COALESCE_RX_MAX_FRAMES_IRQ,
294 ETHTOOL_A_COALESCE_TX_USECS,
295 ETHTOOL_A_COALESCE_TX_MAX_FRAMES,
296 ETHTOOL_A_COALESCE_TX_USECS_IRQ,
297 ETHTOOL_A_COALESCE_TX_MAX_FRAMES_IRQ,
298 ETHTOOL_A_COALESCE_STATS_BLOCK_USECS,
299 ETHTOOL_A_COALESCE_USE_ADAPTIVE_RX,
300 ETHTOOL_A_COALESCE_USE_ADAPTIVE_TX,
301 ETHTOOL_A_COALESCE_PKT_RATE_LOW,
302 ETHTOOL_A_COALESCE_RX_USECS_LOW,
303 ETHTOOL_A_COALESCE_RX_MAX_FRAMES_LOW,
304 ETHTOOL_A_COALESCE_TX_USECS_LOW,
305 ETHTOOL_A_COALESCE_TX_MAX_FRAMES_LOW,
306 ETHTOOL_A_COALESCE_PKT_RATE_HIGH,
307 ETHTOOL_A_COALESCE_RX_USECS_HIGH,
308 ETHTOOL_A_COALESCE_RX_MAX_FRAMES_HIGH,
309 ETHTOOL_A_COALESCE_TX_USECS_HIGH,
310 ETHTOOL_A_COALESCE_TX_MAX_FRAMES_HIGH,
311 ETHTOOL_A_COALESCE_RATE_SAMPLE_INTERVAL,
Christopher Ferris2abfa9e2021-11-01 16:26:06 -0700312 ETHTOOL_A_COALESCE_USE_CQE_MODE_TX,
313 ETHTOOL_A_COALESCE_USE_CQE_MODE_RX,
Christopher Ferrisb7cef6d2023-05-09 19:04:15 +0000314 ETHTOOL_A_COALESCE_TX_AGGR_MAX_BYTES,
315 ETHTOOL_A_COALESCE_TX_AGGR_MAX_FRAMES,
316 ETHTOOL_A_COALESCE_TX_AGGR_TIME_USECS,
Christopher Ferrisaf09c702020-06-01 20:29:29 -0700317 __ETHTOOL_A_COALESCE_CNT,
318 ETHTOOL_A_COALESCE_MAX = (__ETHTOOL_A_COALESCE_CNT - 1)
319};
320enum {
321 ETHTOOL_A_PAUSE_UNSPEC,
322 ETHTOOL_A_PAUSE_HEADER,
323 ETHTOOL_A_PAUSE_AUTONEG,
324 ETHTOOL_A_PAUSE_RX,
325 ETHTOOL_A_PAUSE_TX,
Christopher Ferris32ff3f82020-12-14 13:10:04 -0800326 ETHTOOL_A_PAUSE_STATS,
Christopher Ferrisb7cef6d2023-05-09 19:04:15 +0000327 ETHTOOL_A_PAUSE_STATS_SRC,
Christopher Ferrisaf09c702020-06-01 20:29:29 -0700328 __ETHTOOL_A_PAUSE_CNT,
329 ETHTOOL_A_PAUSE_MAX = (__ETHTOOL_A_PAUSE_CNT - 1)
330};
331enum {
Christopher Ferris32ff3f82020-12-14 13:10:04 -0800332 ETHTOOL_A_PAUSE_STAT_UNSPEC,
333 ETHTOOL_A_PAUSE_STAT_PAD,
334 ETHTOOL_A_PAUSE_STAT_TX_FRAMES,
335 ETHTOOL_A_PAUSE_STAT_RX_FRAMES,
336 __ETHTOOL_A_PAUSE_STAT_CNT,
337 ETHTOOL_A_PAUSE_STAT_MAX = (__ETHTOOL_A_PAUSE_STAT_CNT - 1)
338};
339enum {
Christopher Ferrisaf09c702020-06-01 20:29:29 -0700340 ETHTOOL_A_EEE_UNSPEC,
341 ETHTOOL_A_EEE_HEADER,
342 ETHTOOL_A_EEE_MODES_OURS,
343 ETHTOOL_A_EEE_MODES_PEER,
344 ETHTOOL_A_EEE_ACTIVE,
345 ETHTOOL_A_EEE_ENABLED,
346 ETHTOOL_A_EEE_TX_LPI_ENABLED,
347 ETHTOOL_A_EEE_TX_LPI_TIMER,
348 __ETHTOOL_A_EEE_CNT,
349 ETHTOOL_A_EEE_MAX = (__ETHTOOL_A_EEE_CNT - 1)
350};
351enum {
352 ETHTOOL_A_TSINFO_UNSPEC,
353 ETHTOOL_A_TSINFO_HEADER,
354 ETHTOOL_A_TSINFO_TIMESTAMPING,
355 ETHTOOL_A_TSINFO_TX_TYPES,
356 ETHTOOL_A_TSINFO_RX_FILTERS,
357 ETHTOOL_A_TSINFO_PHC_INDEX,
358 __ETHTOOL_A_TSINFO_CNT,
359 ETHTOOL_A_TSINFO_MAX = (__ETHTOOL_A_TSINFO_CNT - 1)
360};
Christopher Ferris8177cdf2020-08-03 11:53:55 -0700361enum {
Christopher Ferris3a39c0b2021-09-02 00:03:38 +0000362 ETHTOOL_A_PHC_VCLOCKS_UNSPEC,
363 ETHTOOL_A_PHC_VCLOCKS_HEADER,
364 ETHTOOL_A_PHC_VCLOCKS_NUM,
365 ETHTOOL_A_PHC_VCLOCKS_INDEX,
366 __ETHTOOL_A_PHC_VCLOCKS_CNT,
367 ETHTOOL_A_PHC_VCLOCKS_MAX = (__ETHTOOL_A_PHC_VCLOCKS_CNT - 1)
368};
369enum {
Christopher Ferris8177cdf2020-08-03 11:53:55 -0700370 ETHTOOL_A_CABLE_TEST_UNSPEC,
371 ETHTOOL_A_CABLE_TEST_HEADER,
372 __ETHTOOL_A_CABLE_TEST_CNT,
373 ETHTOOL_A_CABLE_TEST_MAX = __ETHTOOL_A_CABLE_TEST_CNT - 1
374};
375enum {
376 ETHTOOL_A_CABLE_RESULT_CODE_UNSPEC,
377 ETHTOOL_A_CABLE_RESULT_CODE_OK,
378 ETHTOOL_A_CABLE_RESULT_CODE_OPEN,
379 ETHTOOL_A_CABLE_RESULT_CODE_SAME_SHORT,
380 ETHTOOL_A_CABLE_RESULT_CODE_CROSS_SHORT,
381};
382enum {
383 ETHTOOL_A_CABLE_PAIR_A,
384 ETHTOOL_A_CABLE_PAIR_B,
385 ETHTOOL_A_CABLE_PAIR_C,
386 ETHTOOL_A_CABLE_PAIR_D,
387};
388enum {
389 ETHTOOL_A_CABLE_RESULT_UNSPEC,
390 ETHTOOL_A_CABLE_RESULT_PAIR,
391 ETHTOOL_A_CABLE_RESULT_CODE,
392 __ETHTOOL_A_CABLE_RESULT_CNT,
393 ETHTOOL_A_CABLE_RESULT_MAX = (__ETHTOOL_A_CABLE_RESULT_CNT - 1)
394};
395enum {
396 ETHTOOL_A_CABLE_FAULT_LENGTH_UNSPEC,
397 ETHTOOL_A_CABLE_FAULT_LENGTH_PAIR,
398 ETHTOOL_A_CABLE_FAULT_LENGTH_CM,
399 __ETHTOOL_A_CABLE_FAULT_LENGTH_CNT,
400 ETHTOOL_A_CABLE_FAULT_LENGTH_MAX = (__ETHTOOL_A_CABLE_FAULT_LENGTH_CNT - 1)
401};
402enum {
403 ETHTOOL_A_CABLE_TEST_NTF_STATUS_UNSPEC,
404 ETHTOOL_A_CABLE_TEST_NTF_STATUS_STARTED,
405 ETHTOOL_A_CABLE_TEST_NTF_STATUS_COMPLETED
406};
407enum {
408 ETHTOOL_A_CABLE_NEST_UNSPEC,
409 ETHTOOL_A_CABLE_NEST_RESULT,
410 ETHTOOL_A_CABLE_NEST_FAULT_LENGTH,
411 __ETHTOOL_A_CABLE_NEST_CNT,
412 ETHTOOL_A_CABLE_NEST_MAX = (__ETHTOOL_A_CABLE_NEST_CNT - 1)
413};
414enum {
415 ETHTOOL_A_CABLE_TEST_NTF_UNSPEC,
416 ETHTOOL_A_CABLE_TEST_NTF_HEADER,
417 ETHTOOL_A_CABLE_TEST_NTF_STATUS,
418 ETHTOOL_A_CABLE_TEST_NTF_NEST,
419 __ETHTOOL_A_CABLE_TEST_NTF_CNT,
420 ETHTOOL_A_CABLE_TEST_NTF_MAX = (__ETHTOOL_A_CABLE_TEST_NTF_CNT - 1)
421};
422enum {
423 ETHTOOL_A_CABLE_TEST_TDR_CFG_UNSPEC,
424 ETHTOOL_A_CABLE_TEST_TDR_CFG_FIRST,
425 ETHTOOL_A_CABLE_TEST_TDR_CFG_LAST,
426 ETHTOOL_A_CABLE_TEST_TDR_CFG_STEP,
427 ETHTOOL_A_CABLE_TEST_TDR_CFG_PAIR,
428 __ETHTOOL_A_CABLE_TEST_TDR_CFG_CNT,
429 ETHTOOL_A_CABLE_TEST_TDR_CFG_MAX = __ETHTOOL_A_CABLE_TEST_TDR_CFG_CNT - 1
430};
431enum {
432 ETHTOOL_A_CABLE_TEST_TDR_UNSPEC,
433 ETHTOOL_A_CABLE_TEST_TDR_HEADER,
434 ETHTOOL_A_CABLE_TEST_TDR_CFG,
435 __ETHTOOL_A_CABLE_TEST_TDR_CNT,
436 ETHTOOL_A_CABLE_TEST_TDR_MAX = __ETHTOOL_A_CABLE_TEST_TDR_CNT - 1
437};
438enum {
439 ETHTOOL_A_CABLE_AMPLITUDE_UNSPEC,
440 ETHTOOL_A_CABLE_AMPLITUDE_PAIR,
441 ETHTOOL_A_CABLE_AMPLITUDE_mV,
442 __ETHTOOL_A_CABLE_AMPLITUDE_CNT,
443 ETHTOOL_A_CABLE_AMPLITUDE_MAX = (__ETHTOOL_A_CABLE_AMPLITUDE_CNT - 1)
444};
445enum {
446 ETHTOOL_A_CABLE_PULSE_UNSPEC,
447 ETHTOOL_A_CABLE_PULSE_mV,
448 __ETHTOOL_A_CABLE_PULSE_CNT,
449 ETHTOOL_A_CABLE_PULSE_MAX = (__ETHTOOL_A_CABLE_PULSE_CNT - 1)
450};
451enum {
452 ETHTOOL_A_CABLE_STEP_UNSPEC,
453 ETHTOOL_A_CABLE_STEP_FIRST_DISTANCE,
454 ETHTOOL_A_CABLE_STEP_LAST_DISTANCE,
455 ETHTOOL_A_CABLE_STEP_STEP_DISTANCE,
456 __ETHTOOL_A_CABLE_STEP_CNT,
457 ETHTOOL_A_CABLE_STEP_MAX = (__ETHTOOL_A_CABLE_STEP_CNT - 1)
458};
459enum {
460 ETHTOOL_A_CABLE_TDR_NEST_UNSPEC,
461 ETHTOOL_A_CABLE_TDR_NEST_STEP,
462 ETHTOOL_A_CABLE_TDR_NEST_AMPLITUDE,
463 ETHTOOL_A_CABLE_TDR_NEST_PULSE,
464 __ETHTOOL_A_CABLE_TDR_NEST_CNT,
465 ETHTOOL_A_CABLE_TDR_NEST_MAX = (__ETHTOOL_A_CABLE_TDR_NEST_CNT - 1)
466};
467enum {
468 ETHTOOL_A_CABLE_TEST_TDR_NTF_UNSPEC,
469 ETHTOOL_A_CABLE_TEST_TDR_NTF_HEADER,
470 ETHTOOL_A_CABLE_TEST_TDR_NTF_STATUS,
471 ETHTOOL_A_CABLE_TEST_TDR_NTF_NEST,
472 __ETHTOOL_A_CABLE_TEST_TDR_NTF_CNT,
473 ETHTOOL_A_CABLE_TEST_TDR_NTF_MAX = __ETHTOOL_A_CABLE_TEST_TDR_NTF_CNT - 1
474};
Christopher Ferris25c18d42020-10-14 17:42:58 -0700475enum {
476 ETHTOOL_UDP_TUNNEL_TYPE_VXLAN,
477 ETHTOOL_UDP_TUNNEL_TYPE_GENEVE,
478 ETHTOOL_UDP_TUNNEL_TYPE_VXLAN_GPE,
479 __ETHTOOL_UDP_TUNNEL_TYPE_CNT
480};
481enum {
482 ETHTOOL_A_TUNNEL_UDP_ENTRY_UNSPEC,
483 ETHTOOL_A_TUNNEL_UDP_ENTRY_PORT,
484 ETHTOOL_A_TUNNEL_UDP_ENTRY_TYPE,
485 __ETHTOOL_A_TUNNEL_UDP_ENTRY_CNT,
486 ETHTOOL_A_TUNNEL_UDP_ENTRY_MAX = (__ETHTOOL_A_TUNNEL_UDP_ENTRY_CNT - 1)
487};
488enum {
489 ETHTOOL_A_TUNNEL_UDP_TABLE_UNSPEC,
490 ETHTOOL_A_TUNNEL_UDP_TABLE_SIZE,
491 ETHTOOL_A_TUNNEL_UDP_TABLE_TYPES,
492 ETHTOOL_A_TUNNEL_UDP_TABLE_ENTRY,
493 __ETHTOOL_A_TUNNEL_UDP_TABLE_CNT,
494 ETHTOOL_A_TUNNEL_UDP_TABLE_MAX = (__ETHTOOL_A_TUNNEL_UDP_TABLE_CNT - 1)
495};
496enum {
497 ETHTOOL_A_TUNNEL_UDP_UNSPEC,
498 ETHTOOL_A_TUNNEL_UDP_TABLE,
499 __ETHTOOL_A_TUNNEL_UDP_CNT,
500 ETHTOOL_A_TUNNEL_UDP_MAX = (__ETHTOOL_A_TUNNEL_UDP_CNT - 1)
501};
502enum {
503 ETHTOOL_A_TUNNEL_INFO_UNSPEC,
504 ETHTOOL_A_TUNNEL_INFO_HEADER,
505 ETHTOOL_A_TUNNEL_INFO_UDP_PORTS,
506 __ETHTOOL_A_TUNNEL_INFO_CNT,
507 ETHTOOL_A_TUNNEL_INFO_MAX = (__ETHTOOL_A_TUNNEL_INFO_CNT - 1)
508};
Christopher Ferrisfcc3b4f2021-07-01 01:30:21 +0000509enum {
510 ETHTOOL_A_FEC_UNSPEC,
511 ETHTOOL_A_FEC_HEADER,
512 ETHTOOL_A_FEC_MODES,
513 ETHTOOL_A_FEC_AUTO,
514 ETHTOOL_A_FEC_ACTIVE,
515 ETHTOOL_A_FEC_STATS,
516 __ETHTOOL_A_FEC_CNT,
517 ETHTOOL_A_FEC_MAX = (__ETHTOOL_A_FEC_CNT - 1)
518};
519enum {
520 ETHTOOL_A_FEC_STAT_UNSPEC,
521 ETHTOOL_A_FEC_STAT_PAD,
522 ETHTOOL_A_FEC_STAT_CORRECTED,
523 ETHTOOL_A_FEC_STAT_UNCORR,
524 ETHTOOL_A_FEC_STAT_CORR_BITS,
525 __ETHTOOL_A_FEC_STAT_CNT,
526 ETHTOOL_A_FEC_STAT_MAX = (__ETHTOOL_A_FEC_STAT_CNT - 1)
527};
528enum {
529 ETHTOOL_A_MODULE_EEPROM_UNSPEC,
530 ETHTOOL_A_MODULE_EEPROM_HEADER,
531 ETHTOOL_A_MODULE_EEPROM_OFFSET,
532 ETHTOOL_A_MODULE_EEPROM_LENGTH,
533 ETHTOOL_A_MODULE_EEPROM_PAGE,
534 ETHTOOL_A_MODULE_EEPROM_BANK,
535 ETHTOOL_A_MODULE_EEPROM_I2C_ADDRESS,
536 ETHTOOL_A_MODULE_EEPROM_DATA,
537 __ETHTOOL_A_MODULE_EEPROM_CNT,
538 ETHTOOL_A_MODULE_EEPROM_MAX = (__ETHTOOL_A_MODULE_EEPROM_CNT - 1)
539};
540enum {
541 ETHTOOL_A_STATS_UNSPEC,
542 ETHTOOL_A_STATS_PAD,
543 ETHTOOL_A_STATS_HEADER,
544 ETHTOOL_A_STATS_GROUPS,
545 ETHTOOL_A_STATS_GRP,
Christopher Ferrisb7cef6d2023-05-09 19:04:15 +0000546 ETHTOOL_A_STATS_SRC,
Christopher Ferrisfcc3b4f2021-07-01 01:30:21 +0000547 __ETHTOOL_A_STATS_CNT,
548 ETHTOOL_A_STATS_MAX = (__ETHTOOL_A_STATS_CNT - 1)
549};
550enum {
551 ETHTOOL_STATS_ETH_PHY,
552 ETHTOOL_STATS_ETH_MAC,
553 ETHTOOL_STATS_ETH_CTRL,
554 ETHTOOL_STATS_RMON,
555 __ETHTOOL_STATS_CNT
556};
557enum {
558 ETHTOOL_A_STATS_GRP_UNSPEC,
559 ETHTOOL_A_STATS_GRP_PAD,
560 ETHTOOL_A_STATS_GRP_ID,
561 ETHTOOL_A_STATS_GRP_SS_ID,
562 ETHTOOL_A_STATS_GRP_STAT,
563 ETHTOOL_A_STATS_GRP_HIST_RX,
564 ETHTOOL_A_STATS_GRP_HIST_TX,
565 ETHTOOL_A_STATS_GRP_HIST_BKT_LOW,
566 ETHTOOL_A_STATS_GRP_HIST_BKT_HI,
567 ETHTOOL_A_STATS_GRP_HIST_VAL,
568 __ETHTOOL_A_STATS_GRP_CNT,
Christopher Ferris37c3f3c2023-07-10 10:59:05 -0700569 ETHTOOL_A_STATS_GRP_MAX = (__ETHTOOL_A_STATS_GRP_CNT - 1)
Christopher Ferrisfcc3b4f2021-07-01 01:30:21 +0000570};
571enum {
572 ETHTOOL_A_STATS_ETH_PHY_5_SYM_ERR,
573 __ETHTOOL_A_STATS_ETH_PHY_CNT,
574 ETHTOOL_A_STATS_ETH_PHY_MAX = (__ETHTOOL_A_STATS_ETH_PHY_CNT - 1)
575};
576enum {
577 ETHTOOL_A_STATS_ETH_MAC_2_TX_PKT,
578 ETHTOOL_A_STATS_ETH_MAC_3_SINGLE_COL,
579 ETHTOOL_A_STATS_ETH_MAC_4_MULTI_COL,
580 ETHTOOL_A_STATS_ETH_MAC_5_RX_PKT,
581 ETHTOOL_A_STATS_ETH_MAC_6_FCS_ERR,
582 ETHTOOL_A_STATS_ETH_MAC_7_ALIGN_ERR,
583 ETHTOOL_A_STATS_ETH_MAC_8_TX_BYTES,
584 ETHTOOL_A_STATS_ETH_MAC_9_TX_DEFER,
585 ETHTOOL_A_STATS_ETH_MAC_10_LATE_COL,
586 ETHTOOL_A_STATS_ETH_MAC_11_XS_COL,
587 ETHTOOL_A_STATS_ETH_MAC_12_TX_INT_ERR,
588 ETHTOOL_A_STATS_ETH_MAC_13_CS_ERR,
589 ETHTOOL_A_STATS_ETH_MAC_14_RX_BYTES,
590 ETHTOOL_A_STATS_ETH_MAC_15_RX_INT_ERR,
591 ETHTOOL_A_STATS_ETH_MAC_18_TX_MCAST,
592 ETHTOOL_A_STATS_ETH_MAC_19_TX_BCAST,
593 ETHTOOL_A_STATS_ETH_MAC_20_XS_DEFER,
594 ETHTOOL_A_STATS_ETH_MAC_21_RX_MCAST,
595 ETHTOOL_A_STATS_ETH_MAC_22_RX_BCAST,
596 ETHTOOL_A_STATS_ETH_MAC_23_IR_LEN_ERR,
597 ETHTOOL_A_STATS_ETH_MAC_24_OOR_LEN,
598 ETHTOOL_A_STATS_ETH_MAC_25_TOO_LONG_ERR,
599 __ETHTOOL_A_STATS_ETH_MAC_CNT,
600 ETHTOOL_A_STATS_ETH_MAC_MAX = (__ETHTOOL_A_STATS_ETH_MAC_CNT - 1)
601};
602enum {
603 ETHTOOL_A_STATS_ETH_CTRL_3_TX,
604 ETHTOOL_A_STATS_ETH_CTRL_4_RX,
605 ETHTOOL_A_STATS_ETH_CTRL_5_RX_UNSUP,
606 __ETHTOOL_A_STATS_ETH_CTRL_CNT,
607 ETHTOOL_A_STATS_ETH_CTRL_MAX = (__ETHTOOL_A_STATS_ETH_CTRL_CNT - 1)
608};
609enum {
610 ETHTOOL_A_STATS_RMON_UNDERSIZE,
611 ETHTOOL_A_STATS_RMON_OVERSIZE,
612 ETHTOOL_A_STATS_RMON_FRAG,
613 ETHTOOL_A_STATS_RMON_JABBER,
614 __ETHTOOL_A_STATS_RMON_CNT,
615 ETHTOOL_A_STATS_RMON_MAX = (__ETHTOOL_A_STATS_RMON_CNT - 1)
616};
Christopher Ferrisa4792612022-01-10 13:51:15 -0800617enum {
618 ETHTOOL_A_MODULE_UNSPEC,
619 ETHTOOL_A_MODULE_HEADER,
620 ETHTOOL_A_MODULE_POWER_MODE_POLICY,
621 ETHTOOL_A_MODULE_POWER_MODE,
622 __ETHTOOL_A_MODULE_CNT,
623 ETHTOOL_A_MODULE_MAX = (__ETHTOOL_A_MODULE_CNT - 1)
624};
Christopher Ferris6cd53a52022-12-12 23:39:16 +0000625enum {
626 ETHTOOL_A_PSE_UNSPEC,
627 ETHTOOL_A_PSE_HEADER,
628 ETHTOOL_A_PODL_PSE_ADMIN_STATE,
629 ETHTOOL_A_PODL_PSE_ADMIN_CONTROL,
630 ETHTOOL_A_PODL_PSE_PW_D_STATUS,
631 __ETHTOOL_A_PSE_CNT,
632 ETHTOOL_A_PSE_MAX = (__ETHTOOL_A_PSE_CNT - 1)
633};
Christopher Ferris8b7fdc92023-02-21 13:36:32 -0800634enum {
635 ETHTOOL_A_RSS_UNSPEC,
636 ETHTOOL_A_RSS_HEADER,
637 ETHTOOL_A_RSS_CONTEXT,
638 ETHTOOL_A_RSS_HFUNC,
639 ETHTOOL_A_RSS_INDIR,
640 ETHTOOL_A_RSS_HKEY,
641 __ETHTOOL_A_RSS_CNT,
642 ETHTOOL_A_RSS_MAX = (__ETHTOOL_A_RSS_CNT - 1),
643};
Christopher Ferrisb7cef6d2023-05-09 19:04:15 +0000644enum {
645 ETHTOOL_A_PLCA_UNSPEC,
646 ETHTOOL_A_PLCA_HEADER,
647 ETHTOOL_A_PLCA_VERSION,
648 ETHTOOL_A_PLCA_ENABLED,
649 ETHTOOL_A_PLCA_STATUS,
650 ETHTOOL_A_PLCA_NODE_CNT,
651 ETHTOOL_A_PLCA_NODE_ID,
652 ETHTOOL_A_PLCA_TO_TMR,
653 ETHTOOL_A_PLCA_BURST_CNT,
654 ETHTOOL_A_PLCA_BURST_TMR,
655 __ETHTOOL_A_PLCA_CNT,
656 ETHTOOL_A_PLCA_MAX = (__ETHTOOL_A_PLCA_CNT - 1)
657};
658enum {
659 ETHTOOL_A_MM_STAT_UNSPEC,
660 ETHTOOL_A_MM_STAT_PAD,
661 ETHTOOL_A_MM_STAT_REASSEMBLY_ERRORS,
662 ETHTOOL_A_MM_STAT_SMD_ERRORS,
663 ETHTOOL_A_MM_STAT_REASSEMBLY_OK,
664 ETHTOOL_A_MM_STAT_RX_FRAG_COUNT,
665 ETHTOOL_A_MM_STAT_TX_FRAG_COUNT,
666 ETHTOOL_A_MM_STAT_HOLD_COUNT,
667 __ETHTOOL_A_MM_STAT_CNT,
668 ETHTOOL_A_MM_STAT_MAX = (__ETHTOOL_A_MM_STAT_CNT - 1)
669};
670enum {
671 ETHTOOL_A_MM_UNSPEC,
672 ETHTOOL_A_MM_HEADER,
673 ETHTOOL_A_MM_PMAC_ENABLED,
674 ETHTOOL_A_MM_TX_ENABLED,
675 ETHTOOL_A_MM_TX_ACTIVE,
676 ETHTOOL_A_MM_TX_MIN_FRAG_SIZE,
677 ETHTOOL_A_MM_RX_MIN_FRAG_SIZE,
678 ETHTOOL_A_MM_VERIFY_ENABLED,
679 ETHTOOL_A_MM_VERIFY_STATUS,
680 ETHTOOL_A_MM_VERIFY_TIME,
681 ETHTOOL_A_MM_MAX_VERIFY_TIME,
682 ETHTOOL_A_MM_STATS,
683 __ETHTOOL_A_MM_CNT,
684 ETHTOOL_A_MM_MAX = (__ETHTOOL_A_MM_CNT - 1)
685};
Christopher Ferrisbb9fcb42020-04-06 11:38:04 -0700686#define ETHTOOL_GENL_NAME "ethtool"
687#define ETHTOOL_GENL_VERSION 1
688#define ETHTOOL_MCGRP_MONITOR_NAME "monitor"
689#endif