1
0
mirror of https://github.com/GOSTSec/sgminer synced 2025-01-22 20:44:19 +00:00

Reinstate the maxPacketSize determined by the end descriptor but allow the driver to override it.

This commit is contained in:
Con Kolivas 2013-06-21 17:36:20 +10:00
parent 94e636a906
commit abdf7510c9
2 changed files with 8 additions and 6 deletions

View File

@ -2182,16 +2182,17 @@ usb_bulk_transfer(struct libusb_device_handle *dev_handle,
int *transferred, unsigned int timeout, int *transferred, unsigned int timeout,
struct cgpu_info *cgpu) struct cgpu_info *cgpu)
{ {
uint16_t MaxPacketSize;
int err, tries = 0; int err, tries = 0;
/* Limit length of transfer to the largest this descriptor supports /* Limit length of transfer to the largest this descriptor supports
* and leave the higher level functions to transfer more if needed. */ * and leave the higher level functions to transfer more if needed. */
#if 0 if (cgpu->usbdev->PrefPacketSize)
if (length > cgpu->usbdev->found->wMaxPacketSize) MaxPacketSize = cgpu->usbdev->PrefPacketSize;
length = cgpu->usbdev->found->wMaxPacketSize; else
#endif MaxPacketSize = cgpu->usbdev->found->wMaxPacketSize;
if (length > 512) if (length > MaxPacketSize)
length = 512; length = MaxPacketSize;
cg_rlock(&cgusb_fd_lock); cg_rlock(&cgusb_fd_lock);
err = libusb_bulk_transfer(dev_handle, endpoint, data, length, err = libusb_bulk_transfer(dev_handle, endpoint, data, length,

View File

@ -176,6 +176,7 @@ struct cg_usb_device {
char *buffer; char *buffer;
uint32_t bufsiz; uint32_t bufsiz;
uint32_t bufamt; uint32_t bufamt;
uint16_t PrefPacketSize;
}; };
#define USB_NOSTAT 0 #define USB_NOSTAT 0