USB 3 devices not reliably connecting at 5Gbps

Hans Petter Selasky hps at selasky.org
Fri Apr 11 06:35:33 UTC 2014


On 04/11/14 06:33, Daniel O'Connor wrote:
> Also, when it does connect at 5Gbps the speed seems quite slow - on my laptop (with USB controller VID 0x8086 PID 0x9c31 - Lynx point I think) I get 225MB/sec using libusb. On FreeBSD I get around 92MB/sec although only after lowering(!!) the amount read per transfer.

Hi,

FreeBSD sets an IRQ latency of 125us, while the others use the default 
of 62.5us. Are you double buffering the USB transfers? The IRQ latency 
can be changed by editing a macro in the XHCI driver:

#define XHCI_IMOD_DEFAULT       0x000003E8U     /* 8000 IRQ/second */

At a rate of 225MB/s you need around 2x32Kbyte of buffer and you need to 
avoid short transfers.

--HPS


More information about the freebsd-usb mailing list