Back to home page

OSCL-LXR

 
 

    


0001 /* SPDX-License-Identifier: GPL-2.0+ WITH Linux-syscall-note */
0002 /*
0003  * vdpa device management interface
0004  * Copyright (c) 2020 Mellanox Technologies Ltd. All rights reserved.
0005  */
0006 
0007 #ifndef _UAPI_LINUX_VDPA_H_
0008 #define _UAPI_LINUX_VDPA_H_
0009 
0010 #define VDPA_GENL_NAME "vdpa"
0011 #define VDPA_GENL_VERSION 0x1
0012 
0013 enum vdpa_command {
0014     VDPA_CMD_UNSPEC,
0015     VDPA_CMD_MGMTDEV_NEW,
0016     VDPA_CMD_MGMTDEV_GET,       /* can dump */
0017     VDPA_CMD_DEV_NEW,
0018     VDPA_CMD_DEV_DEL,
0019     VDPA_CMD_DEV_GET,       /* can dump */
0020     VDPA_CMD_DEV_CONFIG_GET,    /* can dump */
0021     VDPA_CMD_DEV_VSTATS_GET,
0022 };
0023 
0024 enum vdpa_attr {
0025     VDPA_ATTR_UNSPEC,
0026 
0027     /* Pad attribute for 64b alignment */
0028     VDPA_ATTR_PAD = VDPA_ATTR_UNSPEC,
0029 
0030     /* bus name (optional) + dev name together make the parent device handle */
0031     VDPA_ATTR_MGMTDEV_BUS_NAME,     /* string */
0032     VDPA_ATTR_MGMTDEV_DEV_NAME,     /* string */
0033     VDPA_ATTR_MGMTDEV_SUPPORTED_CLASSES,    /* u64 */
0034 
0035     VDPA_ATTR_DEV_NAME,         /* string */
0036     VDPA_ATTR_DEV_ID,           /* u32 */
0037     VDPA_ATTR_DEV_VENDOR_ID,        /* u32 */
0038     VDPA_ATTR_DEV_MAX_VQS,          /* u32 */
0039     VDPA_ATTR_DEV_MAX_VQ_SIZE,      /* u16 */
0040     VDPA_ATTR_DEV_MIN_VQ_SIZE,      /* u16 */
0041 
0042     VDPA_ATTR_DEV_NET_CFG_MACADDR,      /* binary */
0043     VDPA_ATTR_DEV_NET_STATUS,       /* u8 */
0044     VDPA_ATTR_DEV_NET_CFG_MAX_VQP,      /* u16 */
0045     VDPA_ATTR_DEV_NET_CFG_MTU,      /* u16 */
0046 
0047     VDPA_ATTR_DEV_NEGOTIATED_FEATURES,  /* u64 */
0048     VDPA_ATTR_DEV_MGMTDEV_MAX_VQS,      /* u32 */
0049     VDPA_ATTR_DEV_SUPPORTED_FEATURES,   /* u64 */
0050 
0051     VDPA_ATTR_DEV_QUEUE_INDEX,              /* u32 */
0052     VDPA_ATTR_DEV_VENDOR_ATTR_NAME,     /* string */
0053     VDPA_ATTR_DEV_VENDOR_ATTR_VALUE,        /* u64 */
0054 
0055     /* new attributes must be added above here */
0056     VDPA_ATTR_MAX,
0057 };
0058 
0059 #endif