~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~

TOMOYO Linux Cross Reference
Linux/include/uapi/linux/netdev.h

Version: ~ [ linux-6.12-rc7 ] ~ [ linux-6.11.7 ] ~ [ linux-6.10.14 ] ~ [ linux-6.9.12 ] ~ [ linux-6.8.12 ] ~ [ linux-6.7.12 ] ~ [ linux-6.6.60 ] ~ [ linux-6.5.13 ] ~ [ linux-6.4.16 ] ~ [ linux-6.3.13 ] ~ [ linux-6.2.16 ] ~ [ linux-6.1.116 ] ~ [ linux-6.0.19 ] ~ [ linux-5.19.17 ] ~ [ linux-5.18.19 ] ~ [ linux-5.17.15 ] ~ [ linux-5.16.20 ] ~ [ linux-5.15.171 ] ~ [ linux-5.14.21 ] ~ [ linux-5.13.19 ] ~ [ linux-5.12.19 ] ~ [ linux-5.11.22 ] ~ [ linux-5.10.229 ] ~ [ linux-5.9.16 ] ~ [ linux-5.8.18 ] ~ [ linux-5.7.19 ] ~ [ linux-5.6.19 ] ~ [ linux-5.5.19 ] ~ [ linux-5.4.285 ] ~ [ linux-5.3.18 ] ~ [ linux-5.2.21 ] ~ [ linux-5.1.21 ] ~ [ linux-5.0.21 ] ~ [ linux-4.20.17 ] ~ [ linux-4.19.323 ] ~ [ linux-4.18.20 ] ~ [ linux-4.17.19 ] ~ [ linux-4.16.18 ] ~ [ linux-4.15.18 ] ~ [ linux-4.14.336 ] ~ [ linux-4.13.16 ] ~ [ linux-4.12.14 ] ~ [ linux-4.11.12 ] ~ [ linux-4.10.17 ] ~ [ linux-4.9.337 ] ~ [ linux-4.4.302 ] ~ [ linux-3.10.108 ] ~ [ linux-2.6.32.71 ] ~ [ linux-2.6.0 ] ~ [ linux-2.4.37.11 ] ~ [ unix-v6-master ] ~ [ ccs-tools-1.8.9 ] ~ [ policy-sample ] ~
Architecture: ~ [ i386 ] ~ [ alpha ] ~ [ m68k ] ~ [ mips ] ~ [ ppc ] ~ [ sparc ] ~ [ sparc64 ] ~

  1 /* SPDX-License-Identifier: ((GPL-2.0 WITH Linux-syscall-note) OR BSD-3-Clause) */
  2 /* Do not edit directly, auto-generated from: */
  3 /*      Documentation/netlink/specs/netdev.yaml */
  4 /* YNL-GEN uapi header */
  5 
  6 #ifndef _UAPI_LINUX_NETDEV_H
  7 #define _UAPI_LINUX_NETDEV_H
  8 
  9 #define NETDEV_FAMILY_NAME      "netdev"
 10 #define NETDEV_FAMILY_VERSION   1
 11 
 12 /**
 13  * enum netdev_xdp_act
 14  * @NETDEV_XDP_ACT_BASIC: XDP features set supported by all drivers
 15  *   (XDP_ABORTED, XDP_DROP, XDP_PASS, XDP_TX)
 16  * @NETDEV_XDP_ACT_REDIRECT: The netdev supports XDP_REDIRECT
 17  * @NETDEV_XDP_ACT_NDO_XMIT: This feature informs if netdev implements
 18  *   ndo_xdp_xmit callback.
 19  * @NETDEV_XDP_ACT_XSK_ZEROCOPY: This feature informs if netdev supports AF_XDP
 20  *   in zero copy mode.
 21  * @NETDEV_XDP_ACT_HW_OFFLOAD: This feature informs if netdev supports XDP hw
 22  *   offloading.
 23  * @NETDEV_XDP_ACT_RX_SG: This feature informs if netdev implements non-linear
 24  *   XDP buffer support in the driver napi callback.
 25  * @NETDEV_XDP_ACT_NDO_XMIT_SG: This feature informs if netdev implements
 26  *   non-linear XDP buffer support in ndo_xdp_xmit callback.
 27  */
 28 enum netdev_xdp_act {
 29         NETDEV_XDP_ACT_BASIC = 1,
 30         NETDEV_XDP_ACT_REDIRECT = 2,
 31         NETDEV_XDP_ACT_NDO_XMIT = 4,
 32         NETDEV_XDP_ACT_XSK_ZEROCOPY = 8,
 33         NETDEV_XDP_ACT_HW_OFFLOAD = 16,
 34         NETDEV_XDP_ACT_RX_SG = 32,
 35         NETDEV_XDP_ACT_NDO_XMIT_SG = 64,
 36 
 37         /* private: */
 38         NETDEV_XDP_ACT_MASK = 127,
 39 };
 40 
 41 /**
 42  * enum netdev_xdp_rx_metadata
 43  * @NETDEV_XDP_RX_METADATA_TIMESTAMP: Device is capable of exposing receive HW
 44  *   timestamp via bpf_xdp_metadata_rx_timestamp().
 45  * @NETDEV_XDP_RX_METADATA_HASH: Device is capable of exposing receive packet
 46  *   hash via bpf_xdp_metadata_rx_hash().
 47  * @NETDEV_XDP_RX_METADATA_VLAN_TAG: Device is capable of exposing receive
 48  *   packet VLAN tag via bpf_xdp_metadata_rx_vlan_tag().
 49  */
 50 enum netdev_xdp_rx_metadata {
 51         NETDEV_XDP_RX_METADATA_TIMESTAMP = 1,
 52         NETDEV_XDP_RX_METADATA_HASH = 2,
 53         NETDEV_XDP_RX_METADATA_VLAN_TAG = 4,
 54 };
 55 
 56 /**
 57  * enum netdev_xsk_flags
 58  * @NETDEV_XSK_FLAGS_TX_TIMESTAMP: HW timestamping egress packets is supported
 59  *   by the driver.
 60  * @NETDEV_XSK_FLAGS_TX_CHECKSUM: L3 checksum HW offload is supported by the
 61  *   driver.
 62  */
 63 enum netdev_xsk_flags {
 64         NETDEV_XSK_FLAGS_TX_TIMESTAMP = 1,
 65         NETDEV_XSK_FLAGS_TX_CHECKSUM = 2,
 66 };
 67 
 68 enum netdev_queue_type {
 69         NETDEV_QUEUE_TYPE_RX,
 70         NETDEV_QUEUE_TYPE_TX,
 71 };
 72 
 73 enum netdev_qstats_scope {
 74         NETDEV_QSTATS_SCOPE_QUEUE = 1,
 75 };
 76 
 77 enum {
 78         NETDEV_A_DEV_IFINDEX = 1,
 79         NETDEV_A_DEV_PAD,
 80         NETDEV_A_DEV_XDP_FEATURES,
 81         NETDEV_A_DEV_XDP_ZC_MAX_SEGS,
 82         NETDEV_A_DEV_XDP_RX_METADATA_FEATURES,
 83         NETDEV_A_DEV_XSK_FEATURES,
 84 
 85         __NETDEV_A_DEV_MAX,
 86         NETDEV_A_DEV_MAX = (__NETDEV_A_DEV_MAX - 1)
 87 };
 88 
 89 enum {
 90         NETDEV_A_PAGE_POOL_ID = 1,
 91         NETDEV_A_PAGE_POOL_IFINDEX,
 92         NETDEV_A_PAGE_POOL_NAPI_ID,
 93         NETDEV_A_PAGE_POOL_INFLIGHT,
 94         NETDEV_A_PAGE_POOL_INFLIGHT_MEM,
 95         NETDEV_A_PAGE_POOL_DETACH_TIME,
 96         NETDEV_A_PAGE_POOL_DMABUF,
 97 
 98         __NETDEV_A_PAGE_POOL_MAX,
 99         NETDEV_A_PAGE_POOL_MAX = (__NETDEV_A_PAGE_POOL_MAX - 1)
100 };
101 
102 enum {
103         NETDEV_A_PAGE_POOL_STATS_INFO = 1,
104         NETDEV_A_PAGE_POOL_STATS_ALLOC_FAST = 8,
105         NETDEV_A_PAGE_POOL_STATS_ALLOC_SLOW,
106         NETDEV_A_PAGE_POOL_STATS_ALLOC_SLOW_HIGH_ORDER,
107         NETDEV_A_PAGE_POOL_STATS_ALLOC_EMPTY,
108         NETDEV_A_PAGE_POOL_STATS_ALLOC_REFILL,
109         NETDEV_A_PAGE_POOL_STATS_ALLOC_WAIVE,
110         NETDEV_A_PAGE_POOL_STATS_RECYCLE_CACHED,
111         NETDEV_A_PAGE_POOL_STATS_RECYCLE_CACHE_FULL,
112         NETDEV_A_PAGE_POOL_STATS_RECYCLE_RING,
113         NETDEV_A_PAGE_POOL_STATS_RECYCLE_RING_FULL,
114         NETDEV_A_PAGE_POOL_STATS_RECYCLE_RELEASED_REFCNT,
115 
116         __NETDEV_A_PAGE_POOL_STATS_MAX,
117         NETDEV_A_PAGE_POOL_STATS_MAX = (__NETDEV_A_PAGE_POOL_STATS_MAX - 1)
118 };
119 
120 enum {
121         NETDEV_A_NAPI_IFINDEX = 1,
122         NETDEV_A_NAPI_ID,
123         NETDEV_A_NAPI_IRQ,
124         NETDEV_A_NAPI_PID,
125 
126         __NETDEV_A_NAPI_MAX,
127         NETDEV_A_NAPI_MAX = (__NETDEV_A_NAPI_MAX - 1)
128 };
129 
130 enum {
131         NETDEV_A_QUEUE_ID = 1,
132         NETDEV_A_QUEUE_IFINDEX,
133         NETDEV_A_QUEUE_TYPE,
134         NETDEV_A_QUEUE_NAPI_ID,
135         NETDEV_A_QUEUE_DMABUF,
136 
137         __NETDEV_A_QUEUE_MAX,
138         NETDEV_A_QUEUE_MAX = (__NETDEV_A_QUEUE_MAX - 1)
139 };
140 
141 enum {
142         NETDEV_A_QSTATS_IFINDEX = 1,
143         NETDEV_A_QSTATS_QUEUE_TYPE,
144         NETDEV_A_QSTATS_QUEUE_ID,
145         NETDEV_A_QSTATS_SCOPE,
146         NETDEV_A_QSTATS_RX_PACKETS = 8,
147         NETDEV_A_QSTATS_RX_BYTES,
148         NETDEV_A_QSTATS_TX_PACKETS,
149         NETDEV_A_QSTATS_TX_BYTES,
150         NETDEV_A_QSTATS_RX_ALLOC_FAIL,
151         NETDEV_A_QSTATS_RX_HW_DROPS,
152         NETDEV_A_QSTATS_RX_HW_DROP_OVERRUNS,
153         NETDEV_A_QSTATS_RX_CSUM_COMPLETE,
154         NETDEV_A_QSTATS_RX_CSUM_UNNECESSARY,
155         NETDEV_A_QSTATS_RX_CSUM_NONE,
156         NETDEV_A_QSTATS_RX_CSUM_BAD,
157         NETDEV_A_QSTATS_RX_HW_GRO_PACKETS,
158         NETDEV_A_QSTATS_RX_HW_GRO_BYTES,
159         NETDEV_A_QSTATS_RX_HW_GRO_WIRE_PACKETS,
160         NETDEV_A_QSTATS_RX_HW_GRO_WIRE_BYTES,
161         NETDEV_A_QSTATS_RX_HW_DROP_RATELIMITS,
162         NETDEV_A_QSTATS_TX_HW_DROPS,
163         NETDEV_A_QSTATS_TX_HW_DROP_ERRORS,
164         NETDEV_A_QSTATS_TX_CSUM_NONE,
165         NETDEV_A_QSTATS_TX_NEEDS_CSUM,
166         NETDEV_A_QSTATS_TX_HW_GSO_PACKETS,
167         NETDEV_A_QSTATS_TX_HW_GSO_BYTES,
168         NETDEV_A_QSTATS_TX_HW_GSO_WIRE_PACKETS,
169         NETDEV_A_QSTATS_TX_HW_GSO_WIRE_BYTES,
170         NETDEV_A_QSTATS_TX_HW_DROP_RATELIMITS,
171         NETDEV_A_QSTATS_TX_STOP,
172         NETDEV_A_QSTATS_TX_WAKE,
173 
174         __NETDEV_A_QSTATS_MAX,
175         NETDEV_A_QSTATS_MAX = (__NETDEV_A_QSTATS_MAX - 1)
176 };
177 
178 enum {
179         NETDEV_A_DMABUF_IFINDEX = 1,
180         NETDEV_A_DMABUF_QUEUES,
181         NETDEV_A_DMABUF_FD,
182         NETDEV_A_DMABUF_ID,
183 
184         __NETDEV_A_DMABUF_MAX,
185         NETDEV_A_DMABUF_MAX = (__NETDEV_A_DMABUF_MAX - 1)
186 };
187 
188 enum {
189         NETDEV_CMD_DEV_GET = 1,
190         NETDEV_CMD_DEV_ADD_NTF,
191         NETDEV_CMD_DEV_DEL_NTF,
192         NETDEV_CMD_DEV_CHANGE_NTF,
193         NETDEV_CMD_PAGE_POOL_GET,
194         NETDEV_CMD_PAGE_POOL_ADD_NTF,
195         NETDEV_CMD_PAGE_POOL_DEL_NTF,
196         NETDEV_CMD_PAGE_POOL_CHANGE_NTF,
197         NETDEV_CMD_PAGE_POOL_STATS_GET,
198         NETDEV_CMD_QUEUE_GET,
199         NETDEV_CMD_NAPI_GET,
200         NETDEV_CMD_QSTATS_GET,
201         NETDEV_CMD_BIND_RX,
202 
203         __NETDEV_CMD_MAX,
204         NETDEV_CMD_MAX = (__NETDEV_CMD_MAX - 1)
205 };
206 
207 #define NETDEV_MCGRP_MGMT       "mgmt"
208 #define NETDEV_MCGRP_PAGE_POOL  "page-pool"
209 
210 #endif /* _UAPI_LINUX_NETDEV_H */
211 

~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~

kernel.org | git.kernel.org | LWN.net | Project Home | SVN repository | Mail admin

Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.

sflogo.php