[LAD] high speed USB audio device

Clemens Ladisch cladisch at fastmail.net
Tue May 5 07:55:40 UTC 2009


Tor Håkon Gjerde wrote:
> I am trying to build a high speed usb audio hardware device that will 
> work using existing audio class drivers.
> 
> I can get it to play in synchronous mode but i really want to use 
> adaptive synchronization which gives the following kernel error
> 
> cannot submit syncpipe for urb 0, error -90: internal error

Error code -90 is -EMSGSIZE.
linux/Documentation/usb/error-codes.txt says:
| -EMSGSIZE       (a) endpoint maxpacket size is zero; it is not usable
|                     in the current interface altsetting.
|                 (b) ISO packet is larger than the endpoint maxpacket.
|                 (c) requested data transfer length is invalid: negative
|                     or too large for the host controller.

Assuming that the driver doesn't have a bug, I'd guess we have case (b),
and the descriptors of your device say that sync packets must be smaller
than four bytes.

According to my interpretation of the USB 2.0 specification, high speed
sync pipes use four-byte packets containing a 12.13 value that specifies
the number of samples per microframe.


Best regards,
Clemens



More information about the Linux-audio-dev mailing list