142#define DESCRIPTOR_TYPE_CONFIG 2
143#define DESCRIPTOR_TYPE_INTERFACE 4
144#define DESCRIPTOR_TYPE_ENDPOINT 5
146#define USB_EP_TYPE_CONTROL 0x00
147#define USB_EP_TYPE_ISOC 0x01
148#define USB_EP_TYPE_BULK 0x02
149#define USB_EP_TYPE_INTERRUPT 0x03
153#define REQUEST_IN 0x80
155#define REQUEST_CLASS 0x20
156#define REQUEST_VENDOR 0x40
158#define REQUEST_TO_INTERFACE 1
159#define REQUEST_TO_OTHER 3
163#define CLEAR_FEATURE 1
166#define GET_DESCRIPTOR 6
167#define SET_CONFIGURATION 9
168#define SET_INTERFACE 11
171#define PORT_STATUS_CONNECTION (1<<0)
172#define PORT_STATUS_ENABLED (1<<1)
173#define PORT_STATUS_SUSPEND (1<<2)
174#define PORT_STATUS_OVERCURRENT (1<<3)
175#define PORT_STATUS_RESET (1<<4)
176#define PORT_STATUS_POWER (1<<8)
177#define PORT_STATUS_LOW_SPEED (1<<9)
178#define PORT_STATUS_HIGH_SPEED (1<<10)
179#define PORT_STATUS_TEST (1<<11)
180#define PORT_STATUS_INDICATOR (1<<12)
unsigned char uint8_t
Definition acefiex.h:161
unsigned short int uint16_t
Definition acefiex.h:162
uint8_t bMaxPower
Definition usb_desc.h:102
uint8_t iConfiguration
Definition usb_desc.h:100
uint8_t bNumInterfaces
Definition usb_desc.h:98
uint8_t bLength
Definition usb_desc.h:95
uint16_t wTotalLength
Definition usb_desc.h:97
uint8_t bDescriptorType
Definition usb_desc.h:96
uint8_t bmAttributes
Definition usb_desc.h:101
uint8_t bConfigurationValue
Definition usb_desc.h:99
uint16_t idVendor
Definition usb_desc.h:46
uint8_t bDescriptorType
Definition usb_desc.h:40
uint16_t idProduct
Definition usb_desc.h:47
uint8_t bDeviceSubClass
Definition usb_desc.h:43
uint8_t bLength
Definition usb_desc.h:39
uint8_t iManufacturer
Definition usb_desc.h:49
uint8_t bMaxPacketSize0
Definition usb_desc.h:45
uint8_t iSerialNumber
Definition usb_desc.h:51
uint16_t bcdDevice
Definition usb_desc.h:48
uint8_t bDeviceClass
Definition usb_desc.h:42
uint8_t iProduct
Definition usb_desc.h:50
uint8_t bDeviceProtocol
Definition usb_desc.h:44
uint8_t bNumConfigurations
Definition usb_desc.h:52
uint16_t bcdUSB
Definition usb_desc.h:41
uint8_t bInterfaceSubClass
Definition usb_desc.h:73
uint8_t bAlternateSetting
Definition usb_desc.h:70
uint8_t iInterface
Definition usb_desc.h:75
uint8_t bLength
Definition usb_desc.h:67
uint8_t bDescriptorType
Definition usb_desc.h:68
uint8_t bNumEndpoints
Definition usb_desc.h:71
uint8_t bInterfaceClass
Definition usb_desc.h:72
uint8_t bInterfaceProtocol
Definition usb_desc.h:74
uint8_t bInterfaceNumber
Definition usb_desc.h:69
uint8_t bMaxPacketSize0
Definition usb_desc.h:87
uint16_t bcdUSB
Definition usb_desc.h:83
uint8_t bNumConfigurations
Definition usb_desc.h:88
uint8_t bDeviceProtocol
Definition usb_desc.h:86
uint8_t bDeviceSubClass
Definition usb_desc.h:85
uint8_t bLength
Definition usb_desc.h:81
uint8_t bDeviceClass
Definition usb_desc.h:84
uint8_t bDescriptorType
Definition usb_desc.h:82
uint8_t bReserved
Definition usb_desc.h:89
uint8_t bDescriptorType
Definition usb_desc.h:59
uint8_t bLength
Definition usb_desc.h:58
Definition usb_desc.h:107
uint8_t bDescriptorType
Definition usb_desc.h:109
uint8_t bLength
Definition usb_desc.h:108
Definition usb_desc.h:125
uint8_t bEndpointAddress
Definition usb_desc.h:128
uint16_t wMaxPacketSize
Definition usb_desc.h:130
uint8_t bInterval
Definition usb_desc.h:131
uint8_t bLength
Definition usb_desc.h:126
uint8_t bDescriptorType
Definition usb_desc.h:127
uint8_t bmAttributes
Definition usb_desc.h:129
Definition usb_desc.h:114
uint8_t bPwrOn2PwrGood
Definition usb_desc.h:119
uint8_t bDescriptorType
Definition usb_desc.h:116
uint16_t wHubCharacteristics
Definition usb_desc.h:118
uint8_t bNbrPorts
Definition usb_desc.h:117
uint8_t bHubContrCurrent
Definition usb_desc.h:120
uint8_t bLength
Definition usb_desc.h:115
Definition usb_desc.h:136
uint16_t wPortChange
Definition usb_desc.h:138
uint16_t wPortStatus
Definition usb_desc.h:137
@ USBSpeedLow
Definition usb_desc.h:188
@ USBSpeedFull
Definition usb_desc.h:189
@ USBSpeedHigh
Definition usb_desc.h:190
@ USBSpeedUnknown
Definition usb_desc.h:191
struct _usb_ep_desc_ usb_ep_desc_t
struct _string_desc_ usb_string_desc_t
struct _config_desc_ usb_config_desc_t
struct _usb_hub_ usb_hub_desc_t
struct _interface_desc_ usb_if_desc_t
struct _usb_desc_ usb_descriptor_t
usb_descriptor_t * dwc2_get_descriptor(void *desc, uint8_t type)
dwc2_get_descriptor – find a descriptor within descriptor config area
Definition usb_desc.cpp:41
struct _dev_desc_ usb_dev_desc_t
struct _qualifier_desc_ usb_qualifier_desc_t