blob: 6757ef55094292c4906d725a7d26aa981cf7c253 [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};
Christopher Ferris7ac54f52024-08-07 21:07:12 +0000106enum ethtool_header_flags {
107 ETHTOOL_FLAG_COMPACT_BITSETS = 1 << 0,
108 ETHTOOL_FLAG_OMIT_REPLY = 1 << 1,
109 ETHTOOL_FLAG_STATS = 1 << 2,
110};
Christopher Ferris32ff3f82020-12-14 13:10:04 -0800111#define ETHTOOL_FLAG_ALL (ETHTOOL_FLAG_COMPACT_BITSETS | ETHTOOL_FLAG_OMIT_REPLY | ETHTOOL_FLAG_STATS)
Christopher Ferrisbb9fcb42020-04-06 11:38:04 -0700112enum {
113 ETHTOOL_A_HEADER_UNSPEC,
114 ETHTOOL_A_HEADER_DEV_INDEX,
115 ETHTOOL_A_HEADER_DEV_NAME,
116 ETHTOOL_A_HEADER_FLAGS,
117 __ETHTOOL_A_HEADER_CNT,
118 ETHTOOL_A_HEADER_MAX = __ETHTOOL_A_HEADER_CNT - 1
119};
120enum {
121 ETHTOOL_A_BITSET_BIT_UNSPEC,
122 ETHTOOL_A_BITSET_BIT_INDEX,
123 ETHTOOL_A_BITSET_BIT_NAME,
124 ETHTOOL_A_BITSET_BIT_VALUE,
125 __ETHTOOL_A_BITSET_BIT_CNT,
126 ETHTOOL_A_BITSET_BIT_MAX = __ETHTOOL_A_BITSET_BIT_CNT - 1
127};
128enum {
129 ETHTOOL_A_BITSET_BITS_UNSPEC,
130 ETHTOOL_A_BITSET_BITS_BIT,
131 __ETHTOOL_A_BITSET_BITS_CNT,
132 ETHTOOL_A_BITSET_BITS_MAX = __ETHTOOL_A_BITSET_BITS_CNT - 1
133};
134enum {
135 ETHTOOL_A_BITSET_UNSPEC,
136 ETHTOOL_A_BITSET_NOMASK,
137 ETHTOOL_A_BITSET_SIZE,
138 ETHTOOL_A_BITSET_BITS,
139 ETHTOOL_A_BITSET_VALUE,
140 ETHTOOL_A_BITSET_MASK,
141 __ETHTOOL_A_BITSET_CNT,
142 ETHTOOL_A_BITSET_MAX = __ETHTOOL_A_BITSET_CNT - 1
143};
144enum {
145 ETHTOOL_A_STRING_UNSPEC,
146 ETHTOOL_A_STRING_INDEX,
147 ETHTOOL_A_STRING_VALUE,
148 __ETHTOOL_A_STRING_CNT,
149 ETHTOOL_A_STRING_MAX = __ETHTOOL_A_STRING_CNT - 1
150};
151enum {
152 ETHTOOL_A_STRINGS_UNSPEC,
153 ETHTOOL_A_STRINGS_STRING,
154 __ETHTOOL_A_STRINGS_CNT,
155 ETHTOOL_A_STRINGS_MAX = __ETHTOOL_A_STRINGS_CNT - 1
156};
157enum {
158 ETHTOOL_A_STRINGSET_UNSPEC,
159 ETHTOOL_A_STRINGSET_ID,
160 ETHTOOL_A_STRINGSET_COUNT,
161 ETHTOOL_A_STRINGSET_STRINGS,
162 __ETHTOOL_A_STRINGSET_CNT,
163 ETHTOOL_A_STRINGSET_MAX = __ETHTOOL_A_STRINGSET_CNT - 1
164};
165enum {
166 ETHTOOL_A_STRINGSETS_UNSPEC,
167 ETHTOOL_A_STRINGSETS_STRINGSET,
168 __ETHTOOL_A_STRINGSETS_CNT,
169 ETHTOOL_A_STRINGSETS_MAX = __ETHTOOL_A_STRINGSETS_CNT - 1
170};
171enum {
172 ETHTOOL_A_STRSET_UNSPEC,
173 ETHTOOL_A_STRSET_HEADER,
174 ETHTOOL_A_STRSET_STRINGSETS,
175 ETHTOOL_A_STRSET_COUNTS_ONLY,
176 __ETHTOOL_A_STRSET_CNT,
177 ETHTOOL_A_STRSET_MAX = __ETHTOOL_A_STRSET_CNT - 1
178};
179enum {
180 ETHTOOL_A_LINKINFO_UNSPEC,
181 ETHTOOL_A_LINKINFO_HEADER,
182 ETHTOOL_A_LINKINFO_PORT,
183 ETHTOOL_A_LINKINFO_PHYADDR,
184 ETHTOOL_A_LINKINFO_TP_MDIX,
185 ETHTOOL_A_LINKINFO_TP_MDIX_CTRL,
186 ETHTOOL_A_LINKINFO_TRANSCEIVER,
187 __ETHTOOL_A_LINKINFO_CNT,
188 ETHTOOL_A_LINKINFO_MAX = __ETHTOOL_A_LINKINFO_CNT - 1
189};
190enum {
191 ETHTOOL_A_LINKMODES_UNSPEC,
192 ETHTOOL_A_LINKMODES_HEADER,
193 ETHTOOL_A_LINKMODES_AUTONEG,
194 ETHTOOL_A_LINKMODES_OURS,
195 ETHTOOL_A_LINKMODES_PEER,
196 ETHTOOL_A_LINKMODES_SPEED,
197 ETHTOOL_A_LINKMODES_DUPLEX,
Christopher Ferris8177cdf2020-08-03 11:53:55 -0700198 ETHTOOL_A_LINKMODES_MASTER_SLAVE_CFG,
199 ETHTOOL_A_LINKMODES_MASTER_SLAVE_STATE,
Christopher Ferrisa9750ed2021-05-03 14:02:49 -0700200 ETHTOOL_A_LINKMODES_LANES,
Christopher Ferris6cd53a52022-12-12 23:39:16 +0000201 ETHTOOL_A_LINKMODES_RATE_MATCHING,
Christopher Ferrisbb9fcb42020-04-06 11:38:04 -0700202 __ETHTOOL_A_LINKMODES_CNT,
203 ETHTOOL_A_LINKMODES_MAX = __ETHTOOL_A_LINKMODES_CNT - 1
204};
205enum {
206 ETHTOOL_A_LINKSTATE_UNSPEC,
207 ETHTOOL_A_LINKSTATE_HEADER,
208 ETHTOOL_A_LINKSTATE_LINK,
Christopher Ferris8177cdf2020-08-03 11:53:55 -0700209 ETHTOOL_A_LINKSTATE_SQI,
210 ETHTOOL_A_LINKSTATE_SQI_MAX,
Christopher Ferris25c18d42020-10-14 17:42:58 -0700211 ETHTOOL_A_LINKSTATE_EXT_STATE,
212 ETHTOOL_A_LINKSTATE_EXT_SUBSTATE,
Christopher Ferris8b7fdc92023-02-21 13:36:32 -0800213 ETHTOOL_A_LINKSTATE_EXT_DOWN_CNT,
Christopher Ferrisbb9fcb42020-04-06 11:38:04 -0700214 __ETHTOOL_A_LINKSTATE_CNT,
215 ETHTOOL_A_LINKSTATE_MAX = __ETHTOOL_A_LINKSTATE_CNT - 1
216};
217enum {
218 ETHTOOL_A_DEBUG_UNSPEC,
219 ETHTOOL_A_DEBUG_HEADER,
220 ETHTOOL_A_DEBUG_MSGMASK,
221 __ETHTOOL_A_DEBUG_CNT,
222 ETHTOOL_A_DEBUG_MAX = __ETHTOOL_A_DEBUG_CNT - 1
223};
224enum {
225 ETHTOOL_A_WOL_UNSPEC,
226 ETHTOOL_A_WOL_HEADER,
227 ETHTOOL_A_WOL_MODES,
228 ETHTOOL_A_WOL_SOPASS,
229 __ETHTOOL_A_WOL_CNT,
230 ETHTOOL_A_WOL_MAX = __ETHTOOL_A_WOL_CNT - 1
231};
Christopher Ferrisaf09c702020-06-01 20:29:29 -0700232enum {
233 ETHTOOL_A_FEATURES_UNSPEC,
234 ETHTOOL_A_FEATURES_HEADER,
235 ETHTOOL_A_FEATURES_HW,
236 ETHTOOL_A_FEATURES_WANTED,
237 ETHTOOL_A_FEATURES_ACTIVE,
238 ETHTOOL_A_FEATURES_NOCHANGE,
239 __ETHTOOL_A_FEATURES_CNT,
240 ETHTOOL_A_FEATURES_MAX = __ETHTOOL_A_FEATURES_CNT - 1
241};
242enum {
243 ETHTOOL_A_PRIVFLAGS_UNSPEC,
244 ETHTOOL_A_PRIVFLAGS_HEADER,
245 ETHTOOL_A_PRIVFLAGS_FLAGS,
246 __ETHTOOL_A_PRIVFLAGS_CNT,
247 ETHTOOL_A_PRIVFLAGS_MAX = __ETHTOOL_A_PRIVFLAGS_CNT - 1
248};
249enum {
Christopher Ferris10a76e62022-06-08 13:31:52 -0700250 ETHTOOL_TCP_DATA_SPLIT_UNKNOWN = 0,
251 ETHTOOL_TCP_DATA_SPLIT_DISABLED,
252 ETHTOOL_TCP_DATA_SPLIT_ENABLED,
253};
254enum {
Christopher Ferrisaf09c702020-06-01 20:29:29 -0700255 ETHTOOL_A_RINGS_UNSPEC,
256 ETHTOOL_A_RINGS_HEADER,
257 ETHTOOL_A_RINGS_RX_MAX,
258 ETHTOOL_A_RINGS_RX_MINI_MAX,
259 ETHTOOL_A_RINGS_RX_JUMBO_MAX,
260 ETHTOOL_A_RINGS_TX_MAX,
261 ETHTOOL_A_RINGS_RX,
262 ETHTOOL_A_RINGS_RX_MINI,
263 ETHTOOL_A_RINGS_RX_JUMBO,
264 ETHTOOL_A_RINGS_TX,
Christopher Ferris1ed55342022-03-22 16:06:25 -0700265 ETHTOOL_A_RINGS_RX_BUF_LEN,
Christopher Ferris10a76e62022-06-08 13:31:52 -0700266 ETHTOOL_A_RINGS_TCP_DATA_SPLIT,
267 ETHTOOL_A_RINGS_CQE_SIZE,
Christopher Ferris80ae69d2022-08-02 16:32:21 -0700268 ETHTOOL_A_RINGS_TX_PUSH,
Christopher Ferrisb7cef6d2023-05-09 19:04:15 +0000269 ETHTOOL_A_RINGS_RX_PUSH,
Christopher Ferris37c3f3c2023-07-10 10:59:05 -0700270 ETHTOOL_A_RINGS_TX_PUSH_BUF_LEN,
271 ETHTOOL_A_RINGS_TX_PUSH_BUF_LEN_MAX,
Christopher Ferrisaf09c702020-06-01 20:29:29 -0700272 __ETHTOOL_A_RINGS_CNT,
273 ETHTOOL_A_RINGS_MAX = (__ETHTOOL_A_RINGS_CNT - 1)
274};
275enum {
276 ETHTOOL_A_CHANNELS_UNSPEC,
277 ETHTOOL_A_CHANNELS_HEADER,
278 ETHTOOL_A_CHANNELS_RX_MAX,
279 ETHTOOL_A_CHANNELS_TX_MAX,
280 ETHTOOL_A_CHANNELS_OTHER_MAX,
281 ETHTOOL_A_CHANNELS_COMBINED_MAX,
282 ETHTOOL_A_CHANNELS_RX_COUNT,
283 ETHTOOL_A_CHANNELS_TX_COUNT,
284 ETHTOOL_A_CHANNELS_OTHER_COUNT,
285 ETHTOOL_A_CHANNELS_COMBINED_COUNT,
286 __ETHTOOL_A_CHANNELS_CNT,
287 ETHTOOL_A_CHANNELS_MAX = (__ETHTOOL_A_CHANNELS_CNT - 1)
288};
289enum {
290 ETHTOOL_A_COALESCE_UNSPEC,
291 ETHTOOL_A_COALESCE_HEADER,
292 ETHTOOL_A_COALESCE_RX_USECS,
293 ETHTOOL_A_COALESCE_RX_MAX_FRAMES,
294 ETHTOOL_A_COALESCE_RX_USECS_IRQ,
295 ETHTOOL_A_COALESCE_RX_MAX_FRAMES_IRQ,
296 ETHTOOL_A_COALESCE_TX_USECS,
297 ETHTOOL_A_COALESCE_TX_MAX_FRAMES,
298 ETHTOOL_A_COALESCE_TX_USECS_IRQ,
299 ETHTOOL_A_COALESCE_TX_MAX_FRAMES_IRQ,
300 ETHTOOL_A_COALESCE_STATS_BLOCK_USECS,
301 ETHTOOL_A_COALESCE_USE_ADAPTIVE_RX,
302 ETHTOOL_A_COALESCE_USE_ADAPTIVE_TX,
303 ETHTOOL_A_COALESCE_PKT_RATE_LOW,
304 ETHTOOL_A_COALESCE_RX_USECS_LOW,
305 ETHTOOL_A_COALESCE_RX_MAX_FRAMES_LOW,
306 ETHTOOL_A_COALESCE_TX_USECS_LOW,
307 ETHTOOL_A_COALESCE_TX_MAX_FRAMES_LOW,
308 ETHTOOL_A_COALESCE_PKT_RATE_HIGH,
309 ETHTOOL_A_COALESCE_RX_USECS_HIGH,
310 ETHTOOL_A_COALESCE_RX_MAX_FRAMES_HIGH,
311 ETHTOOL_A_COALESCE_TX_USECS_HIGH,
312 ETHTOOL_A_COALESCE_TX_MAX_FRAMES_HIGH,
313 ETHTOOL_A_COALESCE_RATE_SAMPLE_INTERVAL,
Christopher Ferris2abfa9e2021-11-01 16:26:06 -0700314 ETHTOOL_A_COALESCE_USE_CQE_MODE_TX,
315 ETHTOOL_A_COALESCE_USE_CQE_MODE_RX,
Christopher Ferrisb7cef6d2023-05-09 19:04:15 +0000316 ETHTOOL_A_COALESCE_TX_AGGR_MAX_BYTES,
317 ETHTOOL_A_COALESCE_TX_AGGR_MAX_FRAMES,
318 ETHTOOL_A_COALESCE_TX_AGGR_TIME_USECS,
Christopher Ferrisaf09c702020-06-01 20:29:29 -0700319 __ETHTOOL_A_COALESCE_CNT,
320 ETHTOOL_A_COALESCE_MAX = (__ETHTOOL_A_COALESCE_CNT - 1)
321};
322enum {
323 ETHTOOL_A_PAUSE_UNSPEC,
324 ETHTOOL_A_PAUSE_HEADER,
325 ETHTOOL_A_PAUSE_AUTONEG,
326 ETHTOOL_A_PAUSE_RX,
327 ETHTOOL_A_PAUSE_TX,
Christopher Ferris32ff3f82020-12-14 13:10:04 -0800328 ETHTOOL_A_PAUSE_STATS,
Christopher Ferrisb7cef6d2023-05-09 19:04:15 +0000329 ETHTOOL_A_PAUSE_STATS_SRC,
Christopher Ferrisaf09c702020-06-01 20:29:29 -0700330 __ETHTOOL_A_PAUSE_CNT,
331 ETHTOOL_A_PAUSE_MAX = (__ETHTOOL_A_PAUSE_CNT - 1)
332};
333enum {
Christopher Ferris32ff3f82020-12-14 13:10:04 -0800334 ETHTOOL_A_PAUSE_STAT_UNSPEC,
335 ETHTOOL_A_PAUSE_STAT_PAD,
336 ETHTOOL_A_PAUSE_STAT_TX_FRAMES,
337 ETHTOOL_A_PAUSE_STAT_RX_FRAMES,
338 __ETHTOOL_A_PAUSE_STAT_CNT,
339 ETHTOOL_A_PAUSE_STAT_MAX = (__ETHTOOL_A_PAUSE_STAT_CNT - 1)
340};
341enum {
Christopher Ferrisaf09c702020-06-01 20:29:29 -0700342 ETHTOOL_A_EEE_UNSPEC,
343 ETHTOOL_A_EEE_HEADER,
344 ETHTOOL_A_EEE_MODES_OURS,
345 ETHTOOL_A_EEE_MODES_PEER,
346 ETHTOOL_A_EEE_ACTIVE,
347 ETHTOOL_A_EEE_ENABLED,
348 ETHTOOL_A_EEE_TX_LPI_ENABLED,
349 ETHTOOL_A_EEE_TX_LPI_TIMER,
350 __ETHTOOL_A_EEE_CNT,
351 ETHTOOL_A_EEE_MAX = (__ETHTOOL_A_EEE_CNT - 1)
352};
353enum {
354 ETHTOOL_A_TSINFO_UNSPEC,
355 ETHTOOL_A_TSINFO_HEADER,
356 ETHTOOL_A_TSINFO_TIMESTAMPING,
357 ETHTOOL_A_TSINFO_TX_TYPES,
358 ETHTOOL_A_TSINFO_RX_FILTERS,
359 ETHTOOL_A_TSINFO_PHC_INDEX,
Christopher Ferris7ac54f52024-08-07 21:07:12 +0000360 ETHTOOL_A_TSINFO_STATS,
Christopher Ferrisaf09c702020-06-01 20:29:29 -0700361 __ETHTOOL_A_TSINFO_CNT,
362 ETHTOOL_A_TSINFO_MAX = (__ETHTOOL_A_TSINFO_CNT - 1)
363};
Christopher Ferris8177cdf2020-08-03 11:53:55 -0700364enum {
Christopher Ferris7ac54f52024-08-07 21:07:12 +0000365 ETHTOOL_A_TS_STAT_UNSPEC,
366 ETHTOOL_A_TS_STAT_TX_PKTS,
367 ETHTOOL_A_TS_STAT_TX_LOST,
368 ETHTOOL_A_TS_STAT_TX_ERR,
369 __ETHTOOL_A_TS_STAT_CNT,
370 ETHTOOL_A_TS_STAT_MAX = (__ETHTOOL_A_TS_STAT_CNT - 1)
371};
372enum {
Christopher Ferris3a39c0b2021-09-02 00:03:38 +0000373 ETHTOOL_A_PHC_VCLOCKS_UNSPEC,
374 ETHTOOL_A_PHC_VCLOCKS_HEADER,
375 ETHTOOL_A_PHC_VCLOCKS_NUM,
376 ETHTOOL_A_PHC_VCLOCKS_INDEX,
377 __ETHTOOL_A_PHC_VCLOCKS_CNT,
378 ETHTOOL_A_PHC_VCLOCKS_MAX = (__ETHTOOL_A_PHC_VCLOCKS_CNT - 1)
379};
380enum {
Christopher Ferris8177cdf2020-08-03 11:53:55 -0700381 ETHTOOL_A_CABLE_TEST_UNSPEC,
382 ETHTOOL_A_CABLE_TEST_HEADER,
383 __ETHTOOL_A_CABLE_TEST_CNT,
384 ETHTOOL_A_CABLE_TEST_MAX = __ETHTOOL_A_CABLE_TEST_CNT - 1
385};
386enum {
387 ETHTOOL_A_CABLE_RESULT_CODE_UNSPEC,
388 ETHTOOL_A_CABLE_RESULT_CODE_OK,
389 ETHTOOL_A_CABLE_RESULT_CODE_OPEN,
390 ETHTOOL_A_CABLE_RESULT_CODE_SAME_SHORT,
391 ETHTOOL_A_CABLE_RESULT_CODE_CROSS_SHORT,
Christopher Ferris7ac54f52024-08-07 21:07:12 +0000392 ETHTOOL_A_CABLE_RESULT_CODE_IMPEDANCE_MISMATCH,
Christopher Ferris8177cdf2020-08-03 11:53:55 -0700393};
394enum {
395 ETHTOOL_A_CABLE_PAIR_A,
396 ETHTOOL_A_CABLE_PAIR_B,
397 ETHTOOL_A_CABLE_PAIR_C,
398 ETHTOOL_A_CABLE_PAIR_D,
399};
400enum {
401 ETHTOOL_A_CABLE_RESULT_UNSPEC,
402 ETHTOOL_A_CABLE_RESULT_PAIR,
403 ETHTOOL_A_CABLE_RESULT_CODE,
404 __ETHTOOL_A_CABLE_RESULT_CNT,
405 ETHTOOL_A_CABLE_RESULT_MAX = (__ETHTOOL_A_CABLE_RESULT_CNT - 1)
406};
407enum {
408 ETHTOOL_A_CABLE_FAULT_LENGTH_UNSPEC,
409 ETHTOOL_A_CABLE_FAULT_LENGTH_PAIR,
410 ETHTOOL_A_CABLE_FAULT_LENGTH_CM,
411 __ETHTOOL_A_CABLE_FAULT_LENGTH_CNT,
412 ETHTOOL_A_CABLE_FAULT_LENGTH_MAX = (__ETHTOOL_A_CABLE_FAULT_LENGTH_CNT - 1)
413};
414enum {
415 ETHTOOL_A_CABLE_TEST_NTF_STATUS_UNSPEC,
416 ETHTOOL_A_CABLE_TEST_NTF_STATUS_STARTED,
417 ETHTOOL_A_CABLE_TEST_NTF_STATUS_COMPLETED
418};
419enum {
420 ETHTOOL_A_CABLE_NEST_UNSPEC,
421 ETHTOOL_A_CABLE_NEST_RESULT,
422 ETHTOOL_A_CABLE_NEST_FAULT_LENGTH,
423 __ETHTOOL_A_CABLE_NEST_CNT,
424 ETHTOOL_A_CABLE_NEST_MAX = (__ETHTOOL_A_CABLE_NEST_CNT - 1)
425};
426enum {
427 ETHTOOL_A_CABLE_TEST_NTF_UNSPEC,
428 ETHTOOL_A_CABLE_TEST_NTF_HEADER,
429 ETHTOOL_A_CABLE_TEST_NTF_STATUS,
430 ETHTOOL_A_CABLE_TEST_NTF_NEST,
431 __ETHTOOL_A_CABLE_TEST_NTF_CNT,
432 ETHTOOL_A_CABLE_TEST_NTF_MAX = (__ETHTOOL_A_CABLE_TEST_NTF_CNT - 1)
433};
434enum {
435 ETHTOOL_A_CABLE_TEST_TDR_CFG_UNSPEC,
436 ETHTOOL_A_CABLE_TEST_TDR_CFG_FIRST,
437 ETHTOOL_A_CABLE_TEST_TDR_CFG_LAST,
438 ETHTOOL_A_CABLE_TEST_TDR_CFG_STEP,
439 ETHTOOL_A_CABLE_TEST_TDR_CFG_PAIR,
440 __ETHTOOL_A_CABLE_TEST_TDR_CFG_CNT,
441 ETHTOOL_A_CABLE_TEST_TDR_CFG_MAX = __ETHTOOL_A_CABLE_TEST_TDR_CFG_CNT - 1
442};
443enum {
444 ETHTOOL_A_CABLE_TEST_TDR_UNSPEC,
445 ETHTOOL_A_CABLE_TEST_TDR_HEADER,
446 ETHTOOL_A_CABLE_TEST_TDR_CFG,
447 __ETHTOOL_A_CABLE_TEST_TDR_CNT,
448 ETHTOOL_A_CABLE_TEST_TDR_MAX = __ETHTOOL_A_CABLE_TEST_TDR_CNT - 1
449};
450enum {
451 ETHTOOL_A_CABLE_AMPLITUDE_UNSPEC,
452 ETHTOOL_A_CABLE_AMPLITUDE_PAIR,
453 ETHTOOL_A_CABLE_AMPLITUDE_mV,
454 __ETHTOOL_A_CABLE_AMPLITUDE_CNT,
455 ETHTOOL_A_CABLE_AMPLITUDE_MAX = (__ETHTOOL_A_CABLE_AMPLITUDE_CNT - 1)
456};
457enum {
458 ETHTOOL_A_CABLE_PULSE_UNSPEC,
459 ETHTOOL_A_CABLE_PULSE_mV,
460 __ETHTOOL_A_CABLE_PULSE_CNT,
461 ETHTOOL_A_CABLE_PULSE_MAX = (__ETHTOOL_A_CABLE_PULSE_CNT - 1)
462};
463enum {
464 ETHTOOL_A_CABLE_STEP_UNSPEC,
465 ETHTOOL_A_CABLE_STEP_FIRST_DISTANCE,
466 ETHTOOL_A_CABLE_STEP_LAST_DISTANCE,
467 ETHTOOL_A_CABLE_STEP_STEP_DISTANCE,
468 __ETHTOOL_A_CABLE_STEP_CNT,
469 ETHTOOL_A_CABLE_STEP_MAX = (__ETHTOOL_A_CABLE_STEP_CNT - 1)
470};
471enum {
472 ETHTOOL_A_CABLE_TDR_NEST_UNSPEC,
473 ETHTOOL_A_CABLE_TDR_NEST_STEP,
474 ETHTOOL_A_CABLE_TDR_NEST_AMPLITUDE,
475 ETHTOOL_A_CABLE_TDR_NEST_PULSE,
476 __ETHTOOL_A_CABLE_TDR_NEST_CNT,
477 ETHTOOL_A_CABLE_TDR_NEST_MAX = (__ETHTOOL_A_CABLE_TDR_NEST_CNT - 1)
478};
479enum {
480 ETHTOOL_A_CABLE_TEST_TDR_NTF_UNSPEC,
481 ETHTOOL_A_CABLE_TEST_TDR_NTF_HEADER,
482 ETHTOOL_A_CABLE_TEST_TDR_NTF_STATUS,
483 ETHTOOL_A_CABLE_TEST_TDR_NTF_NEST,
484 __ETHTOOL_A_CABLE_TEST_TDR_NTF_CNT,
485 ETHTOOL_A_CABLE_TEST_TDR_NTF_MAX = __ETHTOOL_A_CABLE_TEST_TDR_NTF_CNT - 1
486};
Christopher Ferris25c18d42020-10-14 17:42:58 -0700487enum {
488 ETHTOOL_UDP_TUNNEL_TYPE_VXLAN,
489 ETHTOOL_UDP_TUNNEL_TYPE_GENEVE,
490 ETHTOOL_UDP_TUNNEL_TYPE_VXLAN_GPE,
491 __ETHTOOL_UDP_TUNNEL_TYPE_CNT
492};
493enum {
494 ETHTOOL_A_TUNNEL_UDP_ENTRY_UNSPEC,
495 ETHTOOL_A_TUNNEL_UDP_ENTRY_PORT,
496 ETHTOOL_A_TUNNEL_UDP_ENTRY_TYPE,
497 __ETHTOOL_A_TUNNEL_UDP_ENTRY_CNT,
498 ETHTOOL_A_TUNNEL_UDP_ENTRY_MAX = (__ETHTOOL_A_TUNNEL_UDP_ENTRY_CNT - 1)
499};
500enum {
501 ETHTOOL_A_TUNNEL_UDP_TABLE_UNSPEC,
502 ETHTOOL_A_TUNNEL_UDP_TABLE_SIZE,
503 ETHTOOL_A_TUNNEL_UDP_TABLE_TYPES,
504 ETHTOOL_A_TUNNEL_UDP_TABLE_ENTRY,
505 __ETHTOOL_A_TUNNEL_UDP_TABLE_CNT,
506 ETHTOOL_A_TUNNEL_UDP_TABLE_MAX = (__ETHTOOL_A_TUNNEL_UDP_TABLE_CNT - 1)
507};
508enum {
509 ETHTOOL_A_TUNNEL_UDP_UNSPEC,
510 ETHTOOL_A_TUNNEL_UDP_TABLE,
511 __ETHTOOL_A_TUNNEL_UDP_CNT,
512 ETHTOOL_A_TUNNEL_UDP_MAX = (__ETHTOOL_A_TUNNEL_UDP_CNT - 1)
513};
514enum {
515 ETHTOOL_A_TUNNEL_INFO_UNSPEC,
516 ETHTOOL_A_TUNNEL_INFO_HEADER,
517 ETHTOOL_A_TUNNEL_INFO_UDP_PORTS,
518 __ETHTOOL_A_TUNNEL_INFO_CNT,
519 ETHTOOL_A_TUNNEL_INFO_MAX = (__ETHTOOL_A_TUNNEL_INFO_CNT - 1)
520};
Christopher Ferrisfcc3b4f2021-07-01 01:30:21 +0000521enum {
522 ETHTOOL_A_FEC_UNSPEC,
523 ETHTOOL_A_FEC_HEADER,
524 ETHTOOL_A_FEC_MODES,
525 ETHTOOL_A_FEC_AUTO,
526 ETHTOOL_A_FEC_ACTIVE,
527 ETHTOOL_A_FEC_STATS,
528 __ETHTOOL_A_FEC_CNT,
529 ETHTOOL_A_FEC_MAX = (__ETHTOOL_A_FEC_CNT - 1)
530};
531enum {
532 ETHTOOL_A_FEC_STAT_UNSPEC,
533 ETHTOOL_A_FEC_STAT_PAD,
534 ETHTOOL_A_FEC_STAT_CORRECTED,
535 ETHTOOL_A_FEC_STAT_UNCORR,
536 ETHTOOL_A_FEC_STAT_CORR_BITS,
537 __ETHTOOL_A_FEC_STAT_CNT,
538 ETHTOOL_A_FEC_STAT_MAX = (__ETHTOOL_A_FEC_STAT_CNT - 1)
539};
540enum {
541 ETHTOOL_A_MODULE_EEPROM_UNSPEC,
542 ETHTOOL_A_MODULE_EEPROM_HEADER,
543 ETHTOOL_A_MODULE_EEPROM_OFFSET,
544 ETHTOOL_A_MODULE_EEPROM_LENGTH,
545 ETHTOOL_A_MODULE_EEPROM_PAGE,
546 ETHTOOL_A_MODULE_EEPROM_BANK,
547 ETHTOOL_A_MODULE_EEPROM_I2C_ADDRESS,
548 ETHTOOL_A_MODULE_EEPROM_DATA,
549 __ETHTOOL_A_MODULE_EEPROM_CNT,
550 ETHTOOL_A_MODULE_EEPROM_MAX = (__ETHTOOL_A_MODULE_EEPROM_CNT - 1)
551};
552enum {
553 ETHTOOL_A_STATS_UNSPEC,
554 ETHTOOL_A_STATS_PAD,
555 ETHTOOL_A_STATS_HEADER,
556 ETHTOOL_A_STATS_GROUPS,
557 ETHTOOL_A_STATS_GRP,
Christopher Ferrisb7cef6d2023-05-09 19:04:15 +0000558 ETHTOOL_A_STATS_SRC,
Christopher Ferrisfcc3b4f2021-07-01 01:30:21 +0000559 __ETHTOOL_A_STATS_CNT,
560 ETHTOOL_A_STATS_MAX = (__ETHTOOL_A_STATS_CNT - 1)
561};
562enum {
563 ETHTOOL_STATS_ETH_PHY,
564 ETHTOOL_STATS_ETH_MAC,
565 ETHTOOL_STATS_ETH_CTRL,
566 ETHTOOL_STATS_RMON,
567 __ETHTOOL_STATS_CNT
568};
569enum {
570 ETHTOOL_A_STATS_GRP_UNSPEC,
571 ETHTOOL_A_STATS_GRP_PAD,
572 ETHTOOL_A_STATS_GRP_ID,
573 ETHTOOL_A_STATS_GRP_SS_ID,
574 ETHTOOL_A_STATS_GRP_STAT,
575 ETHTOOL_A_STATS_GRP_HIST_RX,
576 ETHTOOL_A_STATS_GRP_HIST_TX,
577 ETHTOOL_A_STATS_GRP_HIST_BKT_LOW,
578 ETHTOOL_A_STATS_GRP_HIST_BKT_HI,
579 ETHTOOL_A_STATS_GRP_HIST_VAL,
580 __ETHTOOL_A_STATS_GRP_CNT,
Christopher Ferris37c3f3c2023-07-10 10:59:05 -0700581 ETHTOOL_A_STATS_GRP_MAX = (__ETHTOOL_A_STATS_GRP_CNT - 1)
Christopher Ferrisfcc3b4f2021-07-01 01:30:21 +0000582};
583enum {
584 ETHTOOL_A_STATS_ETH_PHY_5_SYM_ERR,
585 __ETHTOOL_A_STATS_ETH_PHY_CNT,
586 ETHTOOL_A_STATS_ETH_PHY_MAX = (__ETHTOOL_A_STATS_ETH_PHY_CNT - 1)
587};
588enum {
589 ETHTOOL_A_STATS_ETH_MAC_2_TX_PKT,
590 ETHTOOL_A_STATS_ETH_MAC_3_SINGLE_COL,
591 ETHTOOL_A_STATS_ETH_MAC_4_MULTI_COL,
592 ETHTOOL_A_STATS_ETH_MAC_5_RX_PKT,
593 ETHTOOL_A_STATS_ETH_MAC_6_FCS_ERR,
594 ETHTOOL_A_STATS_ETH_MAC_7_ALIGN_ERR,
595 ETHTOOL_A_STATS_ETH_MAC_8_TX_BYTES,
596 ETHTOOL_A_STATS_ETH_MAC_9_TX_DEFER,
597 ETHTOOL_A_STATS_ETH_MAC_10_LATE_COL,
598 ETHTOOL_A_STATS_ETH_MAC_11_XS_COL,
599 ETHTOOL_A_STATS_ETH_MAC_12_TX_INT_ERR,
600 ETHTOOL_A_STATS_ETH_MAC_13_CS_ERR,
601 ETHTOOL_A_STATS_ETH_MAC_14_RX_BYTES,
602 ETHTOOL_A_STATS_ETH_MAC_15_RX_INT_ERR,
603 ETHTOOL_A_STATS_ETH_MAC_18_TX_MCAST,
604 ETHTOOL_A_STATS_ETH_MAC_19_TX_BCAST,
605 ETHTOOL_A_STATS_ETH_MAC_20_XS_DEFER,
606 ETHTOOL_A_STATS_ETH_MAC_21_RX_MCAST,
607 ETHTOOL_A_STATS_ETH_MAC_22_RX_BCAST,
608 ETHTOOL_A_STATS_ETH_MAC_23_IR_LEN_ERR,
609 ETHTOOL_A_STATS_ETH_MAC_24_OOR_LEN,
610 ETHTOOL_A_STATS_ETH_MAC_25_TOO_LONG_ERR,
611 __ETHTOOL_A_STATS_ETH_MAC_CNT,
612 ETHTOOL_A_STATS_ETH_MAC_MAX = (__ETHTOOL_A_STATS_ETH_MAC_CNT - 1)
613};
614enum {
615 ETHTOOL_A_STATS_ETH_CTRL_3_TX,
616 ETHTOOL_A_STATS_ETH_CTRL_4_RX,
617 ETHTOOL_A_STATS_ETH_CTRL_5_RX_UNSUP,
618 __ETHTOOL_A_STATS_ETH_CTRL_CNT,
619 ETHTOOL_A_STATS_ETH_CTRL_MAX = (__ETHTOOL_A_STATS_ETH_CTRL_CNT - 1)
620};
621enum {
622 ETHTOOL_A_STATS_RMON_UNDERSIZE,
623 ETHTOOL_A_STATS_RMON_OVERSIZE,
624 ETHTOOL_A_STATS_RMON_FRAG,
625 ETHTOOL_A_STATS_RMON_JABBER,
626 __ETHTOOL_A_STATS_RMON_CNT,
627 ETHTOOL_A_STATS_RMON_MAX = (__ETHTOOL_A_STATS_RMON_CNT - 1)
628};
Christopher Ferrisa4792612022-01-10 13:51:15 -0800629enum {
630 ETHTOOL_A_MODULE_UNSPEC,
631 ETHTOOL_A_MODULE_HEADER,
632 ETHTOOL_A_MODULE_POWER_MODE_POLICY,
633 ETHTOOL_A_MODULE_POWER_MODE,
634 __ETHTOOL_A_MODULE_CNT,
635 ETHTOOL_A_MODULE_MAX = (__ETHTOOL_A_MODULE_CNT - 1)
636};
Christopher Ferris6cd53a52022-12-12 23:39:16 +0000637enum {
638 ETHTOOL_A_PSE_UNSPEC,
639 ETHTOOL_A_PSE_HEADER,
640 ETHTOOL_A_PODL_PSE_ADMIN_STATE,
641 ETHTOOL_A_PODL_PSE_ADMIN_CONTROL,
642 ETHTOOL_A_PODL_PSE_PW_D_STATUS,
Christopher Ferris7ac54f52024-08-07 21:07:12 +0000643 ETHTOOL_A_C33_PSE_ADMIN_STATE,
644 ETHTOOL_A_C33_PSE_ADMIN_CONTROL,
645 ETHTOOL_A_C33_PSE_PW_D_STATUS,
Christopher Ferris6cd53a52022-12-12 23:39:16 +0000646 __ETHTOOL_A_PSE_CNT,
647 ETHTOOL_A_PSE_MAX = (__ETHTOOL_A_PSE_CNT - 1)
648};
Christopher Ferris8b7fdc92023-02-21 13:36:32 -0800649enum {
650 ETHTOOL_A_RSS_UNSPEC,
651 ETHTOOL_A_RSS_HEADER,
652 ETHTOOL_A_RSS_CONTEXT,
653 ETHTOOL_A_RSS_HFUNC,
654 ETHTOOL_A_RSS_INDIR,
655 ETHTOOL_A_RSS_HKEY,
Christopher Ferrisb830ddf2024-03-28 11:48:08 -0700656 ETHTOOL_A_RSS_INPUT_XFRM,
Christopher Ferris8b7fdc92023-02-21 13:36:32 -0800657 __ETHTOOL_A_RSS_CNT,
658 ETHTOOL_A_RSS_MAX = (__ETHTOOL_A_RSS_CNT - 1),
659};
Christopher Ferrisb7cef6d2023-05-09 19:04:15 +0000660enum {
661 ETHTOOL_A_PLCA_UNSPEC,
662 ETHTOOL_A_PLCA_HEADER,
663 ETHTOOL_A_PLCA_VERSION,
664 ETHTOOL_A_PLCA_ENABLED,
665 ETHTOOL_A_PLCA_STATUS,
666 ETHTOOL_A_PLCA_NODE_CNT,
667 ETHTOOL_A_PLCA_NODE_ID,
668 ETHTOOL_A_PLCA_TO_TMR,
669 ETHTOOL_A_PLCA_BURST_CNT,
670 ETHTOOL_A_PLCA_BURST_TMR,
671 __ETHTOOL_A_PLCA_CNT,
672 ETHTOOL_A_PLCA_MAX = (__ETHTOOL_A_PLCA_CNT - 1)
673};
674enum {
675 ETHTOOL_A_MM_STAT_UNSPEC,
676 ETHTOOL_A_MM_STAT_PAD,
677 ETHTOOL_A_MM_STAT_REASSEMBLY_ERRORS,
678 ETHTOOL_A_MM_STAT_SMD_ERRORS,
679 ETHTOOL_A_MM_STAT_REASSEMBLY_OK,
680 ETHTOOL_A_MM_STAT_RX_FRAG_COUNT,
681 ETHTOOL_A_MM_STAT_TX_FRAG_COUNT,
682 ETHTOOL_A_MM_STAT_HOLD_COUNT,
683 __ETHTOOL_A_MM_STAT_CNT,
684 ETHTOOL_A_MM_STAT_MAX = (__ETHTOOL_A_MM_STAT_CNT - 1)
685};
686enum {
687 ETHTOOL_A_MM_UNSPEC,
688 ETHTOOL_A_MM_HEADER,
689 ETHTOOL_A_MM_PMAC_ENABLED,
690 ETHTOOL_A_MM_TX_ENABLED,
691 ETHTOOL_A_MM_TX_ACTIVE,
692 ETHTOOL_A_MM_TX_MIN_FRAG_SIZE,
693 ETHTOOL_A_MM_RX_MIN_FRAG_SIZE,
694 ETHTOOL_A_MM_VERIFY_ENABLED,
695 ETHTOOL_A_MM_VERIFY_STATUS,
696 ETHTOOL_A_MM_VERIFY_TIME,
697 ETHTOOL_A_MM_MAX_VERIFY_TIME,
698 ETHTOOL_A_MM_STATS,
699 __ETHTOOL_A_MM_CNT,
700 ETHTOOL_A_MM_MAX = (__ETHTOOL_A_MM_CNT - 1)
701};
Christopher Ferrisbb9fcb42020-04-06 11:38:04 -0700702#define ETHTOOL_GENL_NAME "ethtool"
703#define ETHTOOL_GENL_VERSION 1
704#define ETHTOOL_MCGRP_MONITOR_NAME "monitor"
705#endif