1# UsbDeviceDescriptor 2<!--Kit: Driver Development Kit--> 3<!--Subsystem: Driver--> 4<!--Owner: @lixinsheng2--> 5<!--Designer: @w00373942--> 6<!--Tester: @dong-dongzhen--> 7<!--Adviser: @w_Machine_cc--> 8 9## Overview 10 11Defines standard device descriptors, which correspond to **Standard Device Descriptor** in the USB protocol. 12 13**Since**: 10 14 15**Related module**: [UsbDDK](capi-usbddk.md) 16 17**Header file:** [usb_ddk_types.h](capi-usb-ddk-types-h.md) 18 19## Summary 20 21### Member Variables 22 23| Name| Description| 24| -- | -- | 25| uint8_t bLength | Size of the descriptor, in bytes.| 26| uint8_t bDescriptorType | Descriptor type.| 27| uint16_t bcdUSB | USB protocol release number.| 28| uint8_t bDeviceClass | Interface class code allocated by the USB-IF.| 29| uint8_t bDeviceSubClass | Device subclass code allocated by USB-IF. The value is limited by that of {@link bDeviceClass}.| 30| uint8_t bDeviceProtocol | Protocol code allocated by USB-IF. The value is limited by that of {@link bDeviceClass} and {@link bDeviceSubClass}.| 31| uint8_t bMaxPacketSize0 | Maximum packet size of endpoint 0. Only values 8, 16, 32, and 64 are valid.| 32| uint16_t idVendor | Vendor ID allocated by USB-IF.| 33| uint16_t idProduct | Product ID allocated by the vendor.| 34| uint16_t bcdDevice | Device SN.| 35| uint8_t iManufacturer | Index of the string descriptor that describes the vendor.| 36| uint8_t iProduct | Index of the string descriptor that describes the product.| 37| uint8_t iSerialNumber | Index of the string descriptor that describes the device SN.| 38| uint8_t bNumConfigurations | Configuration quantity.| 39