X-Git-Url: http://git.zerfleddert.de/cgi-bin/gitweb.cgi/usb-driver/blobdiff_plain/9c9fd67cec6a89fb5fb05b16af00d05a7573c2eb..f95f1d2e4eef8b6854a63ae64e2e0b25374bfe23:/usb-driver.h diff --git a/usb-driver.h b/usb-driver.h index 51e4b6e..9a0329b 100644 --- a/usb-driver.h +++ b/usb-driver.h @@ -15,6 +15,8 @@ #define MAGIC 0xa410b413UL +#define WDU_GET_MAX_PACKET_SIZE(x) ((unsigned short) (((x) & 0x7ff) * (1 + (((x) & 0x1800) >> 11)))) + /* http://www.jungo.com/support/documentation/windriver/811/wdusb_man_mhtml/node78.html#SECTION001734000000000000000 */ struct header_struct { @@ -343,7 +345,7 @@ typedef struct WDU_INTERFACE *pInterfaces; } WDU_CONFIGURATION; -struct wdu_device_info { +struct usb_device_info { WDU_DEVICE_DESCRIPTOR Descriptor; WDU_PIPE_INFO Pipe0; WDU_CONFIGURATION *pConfigs; @@ -351,3 +353,23 @@ struct wdu_device_info { WDU_INTERFACE *pActiveInterface[WD_USB_MAX_INTERFACES]; }; +struct usb_device_info_get { + WDU_DEVICE_DESCRIPTOR Descriptor; + WDU_PIPE_INFO Pipe0; + unsigned char dummy[128]; + WDU_CONFIGURATION cfg; + +}; + +typedef enum { + WDU_DIR_IN = 1, + WDU_DIR_OUT = 2, + WDU_DIR_IN_OUT = 3 +} WDU_DIR; + +typedef enum { + PIPE_TYPE_CONTROL = 0, + PIPE_TYPE_ISOCHRONOUS = 1, + PIPE_TYPE_BULK = 2, + PIPE_TYPE_INTERRUPT = 3 +} USB_PIPE_TYPE;