2.2.9.2 TS_URB_SELECT_CONFIGURATION
This packet represents the URB structure URB_SELECT_CONFIGURATION, as specified in [MSFT-W2KDDK] Volume 2, Part 4, chapter 3. The packet is sent using TRANSFER_IN_REQUEST. OutputBufferSize MUST be set to zero.
|
|
|
|
|
|
|
|
|
|
1 |
|
|
|
|
|
|
|
|
|
2 |
|
|
|
|
|
|
|
|
|
3 |
|
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
TS_URB_HEADER |
|||||||||||||||||||||||||||||||
|
... |
|||||||||||||||||||||||||||||||
|
ConfigurationDescriptorIsValid |
Padding |
||||||||||||||||||||||||||||||
|
NumInterfaces |
|||||||||||||||||||||||||||||||
|
TS_USBD_INTERFACE_INFORMATION (variable) |
|||||||||||||||||||||||||||||||
|
... |
|||||||||||||||||||||||||||||||
|
USB_CONFIGURATION_DESCRIPTOR (variable) |
|||||||||||||||||||||||||||||||
|
... |
|||||||||||||||||||||||||||||||
TS_URB_HEADER (8 bytes): A TS_URB_HEADER as specified in section 2.2.9.1.1.
ConfigurationDescriptorIsValid (1 byte): A 8-bit unsigned integer. A non-zero value indicates that the TS_URB_SELECT_CONFIGURATION contains the USB_CONFIGURATION_DESCRIPTOR field.
Padding (3 bytes): A 24-bit unsigned integer for padding. This field can be set to any value and MUST be ignored upon receipt.
NumInterfaces (4 bytes): A 32-bit unsigned integer. The number of TS_USBD_INTERFACE_INFORMATION structures that are in the TS_URB_SELECT_CONFIGURATION.
TS_USBD_INTERFACE_INFORMATION (variable): An array of TS_USBD_INTERFACE_INFORMATION structures as specified in section 2.2.9.1.2. The number of elements is determined by the NumInterfaces field.
USB_CONFIGURATION_DESCRIPTOR (variable): All data for the configuration with a USB_CONFIGURATION_DESCRIPTOR as specified in [MSFT-W2KDDK] Volume 2, Part 4, Chapter 3.