1*d3d854fdSJakub Kicinski /* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */ 2*d3d854fdSJakub Kicinski /* Do not edit directly, auto-generated from: */ 3*d3d854fdSJakub Kicinski /* Documentation/netlink/specs/netdev.yaml */ 4*d3d854fdSJakub Kicinski /* YNL-GEN uapi header */ 5*d3d854fdSJakub Kicinski 6*d3d854fdSJakub Kicinski #ifndef _UAPI_LINUX_NETDEV_H 7*d3d854fdSJakub Kicinski #define _UAPI_LINUX_NETDEV_H 8*d3d854fdSJakub Kicinski 9*d3d854fdSJakub Kicinski #define NETDEV_FAMILY_NAME "netdev" 10*d3d854fdSJakub Kicinski #define NETDEV_FAMILY_VERSION 1 11*d3d854fdSJakub Kicinski 12*d3d854fdSJakub Kicinski /** 13*d3d854fdSJakub Kicinski * enum netdev_xdp_act 14*d3d854fdSJakub Kicinski * @NETDEV_XDP_ACT_BASIC: XDP feautues set supported by all drivers 15*d3d854fdSJakub Kicinski * (XDP_ABORTED, XDP_DROP, XDP_PASS, XDP_TX) 16*d3d854fdSJakub Kicinski * @NETDEV_XDP_ACT_REDIRECT: The netdev supports XDP_REDIRECT 17*d3d854fdSJakub Kicinski * @NETDEV_XDP_ACT_NDO_XMIT: This feature informs if netdev implements 18*d3d854fdSJakub Kicinski * ndo_xdp_xmit callback. 19*d3d854fdSJakub Kicinski * @NETDEV_XDP_ACT_XSK_ZEROCOPY: This feature informs if netdev supports AF_XDP 20*d3d854fdSJakub Kicinski * in zero copy mode. 21*d3d854fdSJakub Kicinski * @NETDEV_XDP_ACT_HW_OFFLOAD: This feature informs if netdev supports XDP hw 22*d3d854fdSJakub Kicinski * oflloading. 23*d3d854fdSJakub Kicinski * @NETDEV_XDP_ACT_RX_SG: This feature informs if netdev implements non-linear 24*d3d854fdSJakub Kicinski * XDP buffer support in the driver napi callback. 25*d3d854fdSJakub Kicinski * @NETDEV_XDP_ACT_NDO_XMIT_SG: This feature informs if netdev implements 26*d3d854fdSJakub Kicinski * non-linear XDP buffer support in ndo_xdp_xmit callback. 27*d3d854fdSJakub Kicinski */ 28*d3d854fdSJakub Kicinski enum netdev_xdp_act { 29*d3d854fdSJakub Kicinski NETDEV_XDP_ACT_BASIC = 1, 30*d3d854fdSJakub Kicinski NETDEV_XDP_ACT_REDIRECT = 2, 31*d3d854fdSJakub Kicinski NETDEV_XDP_ACT_NDO_XMIT = 4, 32*d3d854fdSJakub Kicinski NETDEV_XDP_ACT_XSK_ZEROCOPY = 8, 33*d3d854fdSJakub Kicinski NETDEV_XDP_ACT_HW_OFFLOAD = 16, 34*d3d854fdSJakub Kicinski NETDEV_XDP_ACT_RX_SG = 32, 35*d3d854fdSJakub Kicinski NETDEV_XDP_ACT_NDO_XMIT_SG = 64, 36*d3d854fdSJakub Kicinski }; 37*d3d854fdSJakub Kicinski 38*d3d854fdSJakub Kicinski enum { 39*d3d854fdSJakub Kicinski NETDEV_A_DEV_IFINDEX = 1, 40*d3d854fdSJakub Kicinski NETDEV_A_DEV_PAD, 41*d3d854fdSJakub Kicinski NETDEV_A_DEV_XDP_FEATURES, 42*d3d854fdSJakub Kicinski 43*d3d854fdSJakub Kicinski __NETDEV_A_DEV_MAX, 44*d3d854fdSJakub Kicinski NETDEV_A_DEV_MAX = (__NETDEV_A_DEV_MAX - 1) 45*d3d854fdSJakub Kicinski }; 46*d3d854fdSJakub Kicinski 47*d3d854fdSJakub Kicinski enum { 48*d3d854fdSJakub Kicinski NETDEV_CMD_DEV_GET = 1, 49*d3d854fdSJakub Kicinski NETDEV_CMD_DEV_ADD_NTF, 50*d3d854fdSJakub Kicinski NETDEV_CMD_DEV_DEL_NTF, 51*d3d854fdSJakub Kicinski NETDEV_CMD_DEV_CHANGE_NTF, 52*d3d854fdSJakub Kicinski 53*d3d854fdSJakub Kicinski __NETDEV_CMD_MAX, 54*d3d854fdSJakub Kicinski NETDEV_CMD_MAX = (__NETDEV_CMD_MAX - 1) 55*d3d854fdSJakub Kicinski }; 56*d3d854fdSJakub Kicinski 57*d3d854fdSJakub Kicinski #define NETDEV_MCGRP_MGMT "mgmt" 58*d3d854fdSJakub Kicinski 59*d3d854fdSJakub Kicinski #endif /* _UAPI_LINUX_NETDEV_H */ 60