brintos

brintos / linux-shallow public Read only

0
0
Text · 5.7 KiB · 7c308f0 Raw
211 lines · c
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_H7#define _UAPI_LINUX_NETDEV_H8 9#define NETDEV_FAMILY_NAME	"netdev"10#define NETDEV_FAMILY_VERSION	111 12/**13 * enum netdev_xdp_act14 * @NETDEV_XDP_ACT_BASIC: XDP features set supported by all drivers15 *   (XDP_ABORTED, XDP_DROP, XDP_PASS, XDP_TX)16 * @NETDEV_XDP_ACT_REDIRECT: The netdev supports XDP_REDIRECT17 * @NETDEV_XDP_ACT_NDO_XMIT: This feature informs if netdev implements18 *   ndo_xdp_xmit callback.19 * @NETDEV_XDP_ACT_XSK_ZEROCOPY: This feature informs if netdev supports AF_XDP20 *   in zero copy mode.21 * @NETDEV_XDP_ACT_HW_OFFLOAD: This feature informs if netdev supports XDP hw22 *   offloading.23 * @NETDEV_XDP_ACT_RX_SG: This feature informs if netdev implements non-linear24 *   XDP buffer support in the driver napi callback.25 * @NETDEV_XDP_ACT_NDO_XMIT_SG: This feature informs if netdev implements26 *   non-linear XDP buffer support in ndo_xdp_xmit callback.27 */28enum 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_metadata43 * @NETDEV_XDP_RX_METADATA_TIMESTAMP: Device is capable of exposing receive HW44 *   timestamp via bpf_xdp_metadata_rx_timestamp().45 * @NETDEV_XDP_RX_METADATA_HASH: Device is capable of exposing receive packet46 *   hash via bpf_xdp_metadata_rx_hash().47 * @NETDEV_XDP_RX_METADATA_VLAN_TAG: Device is capable of exposing receive48 *   packet VLAN tag via bpf_xdp_metadata_rx_vlan_tag().49 */50enum 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_flags58 * @NETDEV_XSK_FLAGS_TX_TIMESTAMP: HW timestamping egress packets is supported59 *   by the driver.60 * @NETDEV_XSK_FLAGS_TX_CHECKSUM: L3 checksum HW offload is supported by the61 *   driver.62 */63enum netdev_xsk_flags {64	NETDEV_XSK_FLAGS_TX_TIMESTAMP = 1,65	NETDEV_XSK_FLAGS_TX_CHECKSUM = 2,66};67 68enum netdev_queue_type {69	NETDEV_QUEUE_TYPE_RX,70	NETDEV_QUEUE_TYPE_TX,71};72 73enum netdev_qstats_scope {74	NETDEV_QSTATS_SCOPE_QUEUE = 1,75};76 77enum {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 89enum {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 102enum {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 120enum {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 130enum {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 141enum {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 178enum {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 188enum {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