libusb
Data Fields
libusb_device_descriptor Struct Reference

A structure representing the standard USB device descriptor. More...

#include <libusb.h>

Data Fields

uint8_t bLength
 Size of this descriptor (in bytes)
uint8_t bDescriptorType
 Descriptor type.
uint16_t bcdUSB
 USB specification release number in binary-coded decimal.
uint8_t bDeviceClass
 USB-IF class code for the device.
uint8_t bDeviceSubClass
 USB-IF subclass code for the device, qualified by the bDeviceClass value.
uint8_t bDeviceProtocol
 USB-IF protocol code for the device, qualified by the bDeviceClass and bDeviceSubClass values.
uint8_t bMaxPacketSize0
 Maximum packet size for endpoint 0.
uint16_t idVendor
 USB-IF vendor ID.
uint16_t idProduct
 USB-IF product ID.
uint16_t bcdDevice
 Device release number in binary-coded decimal.
uint8_t iManufacturer
 Index of string descriptor describing manufacturer.
uint8_t iProduct
 Index of string descriptor describing product.
uint8_t iSerialNumber
 Index of string descriptor containing device serial number.
uint8_t bNumConfigurations
 Number of possible configurations.

Detailed Description

A structure representing the standard USB device descriptor.

This descriptor is documented in section 9.6.1 of the USB 2.0 specification. All multiple-byte fields are represented in host-endian format.


Field Documentation

uint8_t libusb_device_descriptor::bDescriptorType

Descriptor type.

Will have value libusb_descriptor_type::LIBUSB_DT_DEVICE LIBUSB_DT_DEVICE in this context.

uint16_t libusb_device_descriptor::bcdUSB

USB specification release number in binary-coded decimal.

A value of 0x0200 indicates USB 2.0, 0x0110 indicates USB 1.1, etc.

uint8_t libusb_device_descriptor::bDeviceClass

USB-IF class code for the device.

See libusb_class_code.


The documentation for this struct was generated from the following file: