USB transfers in device drivers

O'Connor, Daniel darius at dons.net.au
Thu May 2 08:31:15 UTC 2019



> On 2 May 2019, at 06:15, Hans Petter Selasky <hps at selasky.org> wrote:
> On 2019-05-01 10:34, O'Connor, Daniel wrote:
>> I don't have a solid hypothesis for the failures as yes but one thing I'd like to make sure is that the USB stack is keeping the USB hardware busy with pending requests - does anyone know if the USB FIFO code does that automatically?
> 
> Only the XHCI driver supports HW based double buffering of BULK transfers.

Ahh interesting - is that a ECHI hardware limitation or a driver one?

> I suppose you are using BULK. Else you will need to use ISOCHRONOUS transfers.

Yes it's using bulk transfers.

I did consider isochronous transfers when I started this project but I wasn't sure if there would be enough bandwidth (but perhaps I read the spec wrong). I imagine there would be enough for this data rate but we have others at higher speeds (eg 35MB/sec).

Related to bandwidth - are there any statistics gathered about how busy a port is?

Thanks

--
Daniel O'Connor
"The nice thing about standards is that there
are so many of them to choose from."
 -- Andrew Tanenbaum




More information about the freebsd-usb mailing list