concurrent access to multiple endpoints of a USB device ?
alfred at freebsd.org
Tue Nov 25 16:08:00 PST 2008
* Thierry Herbelot <thierry.herbelot at free.fr> [081125 13:51] wrote:
> (this is with the old USB stack, on a -slow- 7.1 i386 machine)
> I'm playing with a USB2.0 device which exposes multplie endpoints (control on
> EP0, then bulk endpoints 1, 2 and 3).
> When I run a control application doing EP0 requests simultaneously with
> another process reading off EP2, the reading process only gets errors :
> "Received -1 vs 65536 bytes requested ep 2 errno=5 (Input/output error)"
> The control application by itself works correctly.
> I'm using a simple read system call to read from ugen0.2 :
> "nb_bytes = read(ep_fd, buf, nb);"
> Is there anything I should do to for example increase the ep2 buffer size ?
> (maybe I should also try the new USB stabck, for sure)
Give usb2 a shot. Hans is pretty on top of issues in it.
- Alfred Perlstein
More information about the freebsd-usb