USB_DEVICE_DESCRIPTOR structure
The USB_DEVICE_DESCRIPTOR structure is used by USB client drivers to retrieve a USB-defined device descriptor.
Syntax
typedef struct _USB_DEVICE_DESCRIPTOR { UCHAR bLength; UCHAR bDescriptorType; USHORT bcdUSB; UCHAR bDeviceClass; UCHAR bDeviceSubClass; UCHAR bDeviceProtocol; UCHAR bMaxPacketSize0; USHORT idVendor; USHORT idProduct; USHORT bcdDevice; UCHAR iManufacturer; UCHAR iProduct; UCHAR iSerialNumber; UCHAR bNumConfigurations; } USB_DEVICE_DESCRIPTOR, *PUSB_DEVICE_DESCRIPTOR;
Members
- bLength
-
Specifies the length, in bytes, of this descriptor.
- bDescriptorType
-
Specifies the descriptor type. Must be set to USB_DEVICE_DESCRIPTOR_TYPE.
- bcdUSB
-
Identifies the version of the USB specification that this descriptor structure complies with. This value is a binary-coded decimal number.
- bDeviceClass
-
Specifies the class code of the device as assigned by the USB specification group.
- bDeviceSubClass
-
Specifies the subclass code of the device as assigned by the USB specification group.
- bDeviceProtocol
-
Specifies the protocol code of the device as assigned by the USB specification group.
- bMaxPacketSize0
-
Specifies the maximum packet size, in bytes, for endpoint zero of the device. The value must be set to 8, 16, 32, or 64.
- idVendor
-
Specifies the vendor identifier for the device as assigned by the USB specification committee.
- idProduct
-
Specifies the product identifier. This value is assigned by the manufacturer and is device-specific.
- bcdDevice
-
Identifies the version of the device. This value is a binary-coded decimal number.
- iManufacturer
-
Specifies a device-defined index of the string descriptor that provides a string containing the name of the manufacturer of this device.
- iProduct
-
Specifies a device-defined index of the string descriptor that provides a string that contains a description of the device.
- iSerialNumber
-
Specifies a device-defined index of the string descriptor that provides a string that contains a manufacturer-determined serial number for the device.
- bNumConfigurations
-
Specifies the total number of possible configurations for the device.
Remarks
This structure is used to hold a retrieved USB-defined device descriptor. This information can then be used to further configure or retrieve information about the device. Device descriptors are retrieved by submitting a get-descriptor URB.
The iManufacturer, iProduct, and iSerialNumber values, when returned from the host controller driver, contain index values into an array of string descriptors maintained by the device. To retrieve these strings, a string descriptor request can be sent to the device using these index values.
Requirements
Header |
|
---|
See also
Send comments about this topic to Microsoft
Build date: 12/5/2013