- if ((ret = ftdi_usb_open_desc(ctx->ftdic, USB_VENDOR_ID,
- USB_PRODUCT_ID, USB_DESCRIPTION, NULL)) < 0) {
- (void) la8_close_usb_reset_sequencer(ctx); /* Ignore errors. */
- goto err_free_ftdic;
+ for (i = 0; i < ARRAY_SIZE(usb_pids); i++) {
+ sr_dbg("la8: Probing for VID/PID %04x:%04x.", USB_VENDOR_ID,
+ usb_pids[i]);
+ ret = ftdi_usb_open_desc(ctx->ftdic, USB_VENDOR_ID,
+ usb_pids[i], USB_DESCRIPTION, NULL);
+ if (ret == 0) {
+ sr_dbg("la8: Found LA8 device (%04x:%04x).",
+ USB_VENDOR_ID, usb_pids[i]);
+ ctx->usb_pid = usb_pids[i];
+ }