VirtualBox

Changeset 20989 in vbox


Ignore:
Timestamp:
Jun 26, 2009 4:52:05 PM (15 years ago)
Author:
vboxsync
Message:

usb-win: Detect and report data underruns (unexpected short packets) to VUSB layer.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/include/VBox/usblib-win.h

    r20374 r20989  
    8181#define USBMON_MINOR_VERSION              1
    8282
    83 #define USBDRV_MAJOR_VERSION              2
    84 #define USBDRV_MINOR_VERSION              1
     83#define USBDRV_MAJOR_VERSION              3
     84#define USBDRV_MINOR_VERSION              0
    8585
    8686#define SUPUSB_IOCTL_TEST                 CTL_CODE(FILE_DEVICE_UNKNOWN, 0x601, METHOD_BUFFERED, FILE_WRITE_ACCESS)
     
    197197} USBSUP_DIRECTION;
    198198
     199typedef enum
     200{
     201    USBSUP_FLAG_NONE       = 0,
     202    USBSUP_FLAG_SHORT_OK   = 1
     203} USBSUP_XFER_FLAG;
    199204
    200205typedef enum
     
    204209    USBSUP_XFER_DNR        = 2,
    205210    USBSUP_XFER_CRC        = 3,
    206     USBSUP_XFER_NAC        = 4
     211    USBSUP_XFER_NAC        = 4,
     212    USBSUP_XFER_UNDERRUN   = 5,
     213    USBSUP_XFER_OVERRUN    = 6
    207214} USBSUP_ERROR;
    208215
     
    216223typedef struct
    217224{
    218     USBSUP_TRANSFER_TYPE    type;           /* [in] QUSB_TRANSFER_TYPE_XXX */
     225    USBSUP_TRANSFER_TYPE    type;           /* [in] USBSUP_TRANSFER_TYPE_XXX */
    219226    uint32_t                ep;             /* [in] index to dev->pipe */
    220     USBSUP_DIRECTION        dir;            /* [in] QUSB_DIRECTION_XXX */
    221     USBSUP_ERROR            error;          /* [out] QUSB_XFER_XXX */
     227    USBSUP_DIRECTION        dir;            /* [in] USBSUP_DIRECTION_XXX */
     228    USBSUP_XFER_FLAG        flags;          /* [in] USBSUP_FLAG_XXX */
     229    USBSUP_ERROR            error;          /* [out] USBSUP_XFER_XXX */
    222230    size_t                  len;            /* [in/out] may change */
    223231    void                    *buf;           /* [in/out] depends on dir */
Note: See TracChangeset for help on using the changeset viewer.

© 2024 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette