Logo Search packages:      
Sourcecode: virtualbox-ose version File versions  Download package

vusb.h File Reference


Detailed Description

VUSB - VirtualBox USB. (DEV,VMM)

Definition in file vusb.h.

#include <VBox/cdefs.h>
#include <VBox/types.h>

Go to the source code of this file.

Classes

struct  vusb_setup
struct  VUSBDESCCONFIG
struct  VUSBDESCCONFIGEX
struct  VUSBDESCDEVICE
struct  VUSBDESCENDPOINT
struct  VUSBDESCENDPOINTEX
struct  VUSBDESCINTERFACE
struct  VUSBDESCINTERFACEEX
struct  VUSBDESCLANGID
struct  VUSBDESCSTRING
struct  VUSBIDEVICE
struct  VUSBINTERFACE
struct  VUSBIRHCONFIG
struct  VUSBIROOTHUBCONNECTOR
struct  VUSBIROOTHUBPORT
struct  VUSBPORTBITMAP
struct  VUSBURB
struct  VUSBURB::VUSBURBDEV
struct  VUSBURB::VUSBURBHCI
struct  VUSBURB::VUSBURBHCI::VUSBURBHCITD
struct  VUSBURB::VUSBURBVUSB
struct  VUSBURBISOCPKT

URB

#define VUSBURB_MAGIC   0x19490112
enum  VUSBDIRECTION {
  VUSBDIRECTION_SETUP = 0, VUSBDIRECTION_IN = 1, VUSBDIRECTION_OUT = 2, VUSBDIRECTION_INVALID = 0x7f,
  VUSBDIRECTION_SETUP = 0, VUSBDIRECTION_IN = 1, VUSBDIRECTION_OUT = 2, VUSBDIRECTION_INVALID = 0x7f
}
enum  VUSBSTATUS {
  VUSBSTATUS_OK = 0, VUSBSTATUS_STALL, VUSBSTATUS_DNR, VUSBSTATUS_CRC,
  VUSBSTATUS_DATA_UNDERRUN, VUSBSTATUS_DATA_OVERRUN, VUSBSTATUS_NOT_ACCESSED, VUSBSTATUS_INVALID = 0x7f,
  VUSBSTATUS_OK = 0, VUSBSTATUS_STALL, VUSBSTATUS_DNR, VUSBSTATUS_CRC,
  VUSBSTATUS_UNDERFLOW, VUSBSTATUS_INVALID = 0x7f
}
enum  VUSBURBSTATE {
  VUSBURBSTATE_INVALID = 0, VUSBURBSTATE_FREE, VUSBURBSTATE_ALLOCATED, VUSBURBSTATE_IN_FLIGHT,
  VUSBURBSTATE_REAPED, VUSBURBSTATE_CANCELLED, VUSBURBSTATE_END, VUSBURBSTATE_32BIT_HACK = 0x7fffffff,
  VUSBURBSTATE_INVALID = 0, VUSBURBSTATE_FREE, VUSBURBSTATE_ALLOCATED, VUSBURBSTATE_IN_FLIGHT,
  VUSBURBSTATE_REAPED, VUSBURBSTATE_CANCELLED, VUSBURBSTATE_END, VUSBURBSTATE_32BIT_HACK = 0x7fffffff
}
enum  VUSBXFERTYPE {
  VUSBXFERTYPE_CTRL = 0, VUSBXFERTYPE_ISOC, VUSBXFERTYPE_BULK, VUSBXFERTYPE_INTR,
  VUSBXFERTYPE_MSG, VUSBXFERTYPE_INVALID = 0x7f, VUSBXFERTYPE_CTRL = 0, VUSBXFERTYPE_ISOC,
  VUSBXFERTYPE_BULK, VUSBXFERTYPE_INTR, VUSBXFERTYPE_MSG, VUSBXFERTYPE_INVALID = 0x7f
}
typedef const VUSBURBISOCPKTPCVUSBURBISOCPKT
typedef VUSBURBISOCPKTPVUSBURBISOCPTK

Defines

#define VUSB_BUS_HZ   12000000
#define VUSB_DIR_MASK   0x80
#define VUSB_DIR_TO_DEVICE   0x00
#define VUSB_DIR_TO_HOST   0x80
#define VUSB_DIRECTION_IN   VUSBDIRECTION_IN
#define VUSB_DIRECTION_OUT   VUSBDIRECTION_OUT
#define VUSB_DIRECTION_SETUP   VUSBDIRECTION_SETUP
USB Descriptor types (from spec)
#define VUSB_DT_CONFIG   0x02
#define VUSB_DT_DEVICE   0x01
#define VUSB_DT_DEVICE_QUALIFIER   0x06
#define VUSB_DT_ENDPOINT   0x05
#define VUSB_DT_INTERFACE   0x04
#define VUSB_DT_INTERFACE_POWER   0x08
#define VUSB_DT_OTHER_SPEED_CFG   0x07
#define VUSB_DT_STRING   0x03
USB Descriptor minimum sizes (from spec)
#define VUSB_DT_CONFIG_MIN_LEN   9
#define VUSB_DT_CONFIG_STRING_MIN_LEN   2
#define VUSB_DT_DEVICE_MIN_LEN   18
#define VUSB_DT_ENDPOINT_MIN_LEN   7
#define VUSB_DT_INTERFACE_MIN_LEN   9
USB Control message recipient codes (from spec)
#define VUSB_RECIP_MASK   0x1f
#define VUSB_TO_DEVICE   0x0
#define VUSB_TO_ENDPOINT   0x2
#define VUSB_TO_INTERFACE   0x1
#define VUSB_TO_OTHER   0x3
USB control pipe setup packet structure (from spec)
#define VUSB_REQ_CLASS   (0x1 << VUSB_REQ_SHIFT)
#define VUSB_REQ_MASK   (0x3 << VUSB_REQ_SHIFT)
#define VUSB_REQ_RESERVED   (0x3 << VUSB_REQ_SHIFT)
#define VUSB_REQ_SHIFT   (5)
#define VUSB_REQ_STANDARD   (0x0 << VUSB_REQ_SHIFT)
#define VUSB_REQ_VENDOR   (0x2 << VUSB_REQ_SHIFT)
USB Standard device requests (from spec)
#define VUSB_REQ_CLEAR_FEATURE   0x01
#define VUSB_REQ_GET_CONFIGURATION   0x08
#define VUSB_REQ_GET_DESCRIPTOR   0x06
#define VUSB_REQ_GET_INTERFACE   0x0a
#define VUSB_REQ_GET_STATUS   0x00
#define VUSB_REQ_MAX   0x0d
#define VUSB_REQ_SET_ADDRESS   0x05
#define VUSB_REQ_SET_CONFIGURATION   0x09
#define VUSB_REQ_SET_DESCRIPTOR   0x07
#define VUSB_REQ_SET_FEATURE   0x03
#define VUSB_REQ_SET_INTERFACE   0x0b
#define VUSB_REQ_SYNCH_FRAME   0x0c
USB Standard version flags.
#define VUSB_STDVER_11   RT_BIT(1)
#define VUSB_STDVER_20   RT_BIT(2)

Typedefs

typedef const VUSBDESCCONFIGPCVUSBDESCCONFIG
typedef const VUSBDESCCONFIGEXPCVUSBDESCCONFIGEX
typedef const VUSBDESCDEVICEPCVUSBDESCDEVICE
typedef const VUSBDESCENDPOINTPCVUSBDESCENDPOINT
typedef const VUSBDESCENDPOINTEXPCVUSBDESCENDPOINTEX
typedef const VUSBDESCINTERFACEPCVUSBDESCINTERFACE
typedef const VUSBDESCINTERFACEEXPCVUSBDESCINTERFACEEX
typedef const VUSBDESCLANGIDPCVUSBDESCLANGID
typedef const VUSBDESCSTRINGPCVUSBDESCSTRING
typedef const VUSBINTERFACEPCVUSBINTERFACE
typedef const VUSBSETUPPCVUSBSETUP
typedef FNVUSBRESETDONE * PFNVUSBRESETDONE
typedef VUSBDESCCONFIGPVUSBDESCCONFIG
typedef VUSBDESCCONFIGEXPVUSBDESCCONFIGEX
typedef VUSBDESCDEVICEPVUSBDESCDEVICE
typedef VUSBDESCENDPOINTPVUSBDESCENDPOINT
typedef VUSBDESCENDPOINTEXPVUSBDESCENDPOINTEX
typedef VUSBDESCINTERFACEPVUSBDESCINTERFACE
typedef VUSBDESCINTERFACEEXPVUSBDESCINTERFACEEX
typedef VUSBDESCLANGIDPVUSBDESCLANGID
typedef VUSBDESCSTRINGPVUSBDESCSTRING
typedef struct VUSBIDEVICEPVUSBIDEVICE
typedef VUSBINTERFACEPVUSBINTERFACE
typedef struct VUSBIRHCONFIGPVUSBIRHCONFIG
typedef struct
VUSBIROOTHUBCONNECTOR
PVUSBIROOTHUBCONNECTOR
typedef struct VUSBIROOTHUBPORTPVUSBIROOTHUBPORT
typedef VUSBPORTBITMAPPVUSBPORTBITMAP
typedef VUSBSETUPPVUSBSETUP
typedef struct VUSBURBPVUSBURB
typedef int void * pvUser
typedef int rc
typedef struct vusb_setup VUSBSETUP

Enumerations

enum  VUSBDEVICESTATE {
  VUSB_DEVICE_STATE_INVALID = 0, VUSB_DEVICE_STATE_DETACHED, VUSB_DEVICE_STATE_ATTACHED, VUSB_DEVICE_STATE_POWERED,
  VUSB_DEVICE_STATE_DEFAULT, VUSB_DEVICE_STATE_ADDRESS, VUSB_DEVICE_STATE_CONFIGURED, VUSB_DEVICE_STATE_SUSPENDED,
  VUSB_DEVICE_STATE_RESET, VUSB_DEVICE_STATE_DESTROYED, VUSB_DEVICE_STATE_32BIT_HACK = 0x7fffffff
}

Functions

typedef DECLCALLBACK (void) FNVUSBRESETDONE(PVUSBIDEVICE pDevice


Generated by  Doxygen 1.6.0   Back to index