54 lines · c
1/* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */2/*3 * usbip.h4 *5 * USBIP uapi defines and function prototypes etc.6*/7 8#ifndef _UAPI_LINUX_USBIP_H9#define _UAPI_LINUX_USBIP_H10 11/* usbip device status - exported in usbip device sysfs status */12enum usbip_device_status {13 /* sdev is available. */14 SDEV_ST_AVAILABLE = 0x01,15 /* sdev is now used. */16 SDEV_ST_USED,17 /* sdev is unusable because of a fatal error. */18 SDEV_ST_ERROR,19 20 /* vdev does not connect a remote device. */21 VDEV_ST_NULL,22 /* vdev is used, but the USB address is not assigned yet */23 VDEV_ST_NOTASSIGNED,24 VDEV_ST_USED,25 VDEV_ST_ERROR26};27 28/* USB URB Transfer flags:29 *30 * USBIP server and client (vchi) pack URBs in TCP packets. The following31 * are the transfer type defines used in USBIP protocol.32 */33 34#define USBIP_URB_SHORT_NOT_OK 0x000135#define USBIP_URB_ISO_ASAP 0x000236#define USBIP_URB_NO_TRANSFER_DMA_MAP 0x000437#define USBIP_URB_ZERO_PACKET 0x004038#define USBIP_URB_NO_INTERRUPT 0x008039#define USBIP_URB_FREE_BUFFER 0x010040#define USBIP_URB_DIR_IN 0x020041#define USBIP_URB_DIR_OUT 042#define USBIP_URB_DIR_MASK USBIP_URB_DIR_IN43 44#define USBIP_URB_DMA_MAP_SINGLE 0x0001000045#define USBIP_URB_DMA_MAP_PAGE 0x0002000046#define USBIP_URB_DMA_MAP_SG 0x0004000047#define USBIP_URB_MAP_LOCAL 0x0008000048#define USBIP_URB_SETUP_MAP_SINGLE 0x0010000049#define USBIP_URB_SETUP_MAP_LOCAL 0x0020000050#define USBIP_URB_DMA_SG_COMBINED 0x0040000051#define USBIP_URB_ALIGNED_TEMP_BUFFER 0x0080000052 53#endif /* _UAPI_LINUX_USBIP_H */54