|
|
@ -297,7 +297,7 @@ static void icarus_initialise(struct cgpu_info *icarus, int baud) |
|
|
|
return; |
|
|
|
return; |
|
|
|
|
|
|
|
|
|
|
|
// Latency
|
|
|
|
// Latency
|
|
|
|
usb_ftdi_set_latency(icarus); |
|
|
|
_usb_ftdi_set_latency(icarus, info->intinfo); |
|
|
|
|
|
|
|
|
|
|
|
if (icarus->usbinfo.nodev) |
|
|
|
if (icarus->usbinfo.nodev) |
|
|
|
return; |
|
|
|
return; |
|
|
@ -890,13 +890,6 @@ static bool icarus_detect_one(struct libusb_device *dev, struct usb_find_devices |
|
|
|
|
|
|
|
|
|
|
|
cgtmp->usbinfo.usbstat = USB_NOSTAT; |
|
|
|
cgtmp->usbinfo.usbstat = USB_NOSTAT; |
|
|
|
|
|
|
|
|
|
|
|
if (!add_cgpu(cgtmp)) { |
|
|
|
|
|
|
|
usb_uninit(cgtmp); |
|
|
|
|
|
|
|
continue; |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
update_usb_stats(cgtmp); |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
intmp = (struct ICARUS_INFO *)malloc(sizeof(struct ICARUS_INFO)); |
|
|
|
intmp = (struct ICARUS_INFO *)malloc(sizeof(struct ICARUS_INFO)); |
|
|
|
if (unlikely(!intmp)) |
|
|
|
if (unlikely(!intmp)) |
|
|
|
quit(1, "Failed2 to malloc ICARUS_INFO"); |
|
|
|
quit(1, "Failed2 to malloc ICARUS_INFO"); |
|
|
@ -907,6 +900,16 @@ static bool icarus_detect_one(struct libusb_device *dev, struct usb_find_devices |
|
|
|
memcpy(intmp, info, sizeof(struct ICARUS_INFO)); |
|
|
|
memcpy(intmp, info, sizeof(struct ICARUS_INFO)); |
|
|
|
|
|
|
|
|
|
|
|
intmp->intinfo = i; |
|
|
|
intmp->intinfo = i; |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
icarus_initialise(cgtmp, baud); |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
if (!add_cgpu(cgtmp)) { |
|
|
|
|
|
|
|
usb_uninit(cgtmp); |
|
|
|
|
|
|
|
free(intmp); |
|
|
|
|
|
|
|
continue; |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
update_usb_stats(cgtmp); |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|