| 68 | }; |
| 69 | |
| 70 | int set_isochronous_delay(libusb_device_handle *handle, int timeout) |
| 71 | { |
| 72 | // for details see USB 3.1 r1 spec section 9.4.11 |
| 73 | |
| 74 | uint8_t bmRequestType = LIBUSB_RECIPIENT_DEVICE; |
| 75 | uint8_t bRequest = LIBUSB_SET_ISOCH_DELAY; |
| 76 | // if no super speed hubs in between, then it is equal to tTPTransmissionDelay(=40ns) |
| 77 | uint16_t wValue = 40; // 40 nanoseconds |
| 78 | uint16_t wIndex = 0; |
| 79 | uint16_t wLength = 0; |
| 80 | uint8_t *data = 0; |
| 81 | |
| 82 | return libusb_control_transfer(handle, bmRequestType, bRequest, wValue, wIndex, data, wLength, timeout); |
| 83 | } |
| 84 | |
| 85 | int set_sel(libusb_device_handle *handle, int timeout, uint8_t u1sel, uint8_t u1pel, uint8_t u2sel, uint8_t u2pel) |
| 86 | { |