diff options
author | Paul Kocialkowski | 2024-07-21 17:22:47 +0200 |
---|---|---|
committer | Paul Kocialkowski | 2024-07-21 17:24:31 +0200 |
commit | af8058cc56dbd362e1a74dc70aa93d1902ff1760 (patch) | |
tree | 3841671ff35b947149225de3218160ced610ae1e /src/usb.c | |
parent | 8c100bcad6d48cbecfea74b43f92b60d6f95cfcb (diff) |
usb: Check for High-Speed configuration
Signed-off-by: Paul Kocialkowski <contact@paulk.fr>
Diffstat (limited to 'src/usb.c')
-rw-r--r-- | src/usb.c | 7 |
1 files changed, 7 insertions, 0 deletions
@@ -31,6 +31,7 @@ int usb_open(struct context *context, struct omap_description **descriptions, si struct libusb_device_handle *handle = NULL; struct libusb_device_descriptor descriptor; int configuration; + int speed; char device_name[32]; size_t count; size_t i; @@ -66,6 +67,12 @@ int usb_open(struct context *context, struct omap_description **descriptions, si for (j = 0; j < descriptions_count; j++) { for (k = 0; k < descriptions[j]->usb_device_ids_count; k++) { if (descriptions[j]->usb_device_ids[k].vendor_id == descriptor.idVendor && descriptions[j]->usb_device_ids[k].product_id == descriptor.idProduct) { + speed = libusb_get_device_speed(list[i]); + if (speed != LIBUSB_SPEED_HIGH) { + fprintf(stderr, "Configuring High-Speed failed\n"); + goto error; + } + rc = libusb_open(list[i], &handle); if (rc < 0) { fprintf(stderr, "Opening USB device failed\n"); |