* USB Audio device syncpipe error
@ 2010-09-08 19:25 6275 kson
2010-09-08 19:40 ` 6275 kson
0 siblings, 1 reply; 8+ messages in thread
From: 6275 kson @ 2010-09-08 19:25 UTC (permalink / raw)
To: alsa-devel
Hello,
I am working on a usb audio device and I'm having trouble getting it to show
up as an output device in Ubuntu's sound preferences. The device is working
well with other OS's.
My syslog shows this error.
'cannot submit syncpipe for urb 0, error -90: internal error'
If someone could help me diagnose the source of the problem I would
appreciate it very much.
Here are some more details.
The device operates at high speed but uses USB Audio Class 1.0.
The output endpoint is Isochronous asynchronous and I am using a feedback
endpoint with a 32ms polling interval.
The device works with Ubuntu when running at full speed. (Input and Output
show up in the sound preferences).
At High Speed only the Input shows up in the sound preferences.
>From my usb analyzer log I never see a request for the feedback endpoint
when running at HS, while I do see the request at FS.
Cheers,
^ permalink raw reply [flat|nested] 8+ messages in thread
* USB Audio device syncpipe error
2010-09-08 19:25 USB Audio device syncpipe error 6275 kson
@ 2010-09-08 19:40 ` 6275 kson
2010-09-09 2:25 ` Daniel Mack
2010-09-09 7:50 ` Clemens Ladisch
0 siblings, 2 replies; 8+ messages in thread
From: 6275 kson @ 2010-09-08 19:40 UTC (permalink / raw)
To: alsa-devel
Hello,
I am working on a usb audio device and I'm having trouble getting it to show
up as an output device in Ubuntu's (10.4) sound preferences. The device is
working well with other OS's.
My syslog shows this error.
'cannot submit syncpipe for urb 0, error -90: internal error'
If someone could help me diagnose the source of the problem I would
appreciate it very much.
Here are some more details.
The device operates at high speed but uses USB Audio Class 1.0.
The output endpoint is Isochronous asynchronous and I am using a feedback
endpoint with a 32ms polling interval.
The device works with Ubuntu when running at full speed. (Input and Output
show up in the sound preferences).
At High Speed only the Input shows up in the sound preferences.
>From my usb analyzer log I never see a request for the feedback endpoint
when running at HS, while I do see the request at FS.
Cheers,
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: USB Audio device syncpipe error
2010-09-08 19:40 ` 6275 kson
@ 2010-09-09 2:25 ` Daniel Mack
2010-09-09 7:50 ` Clemens Ladisch
1 sibling, 0 replies; 8+ messages in thread
From: Daniel Mack @ 2010-09-09 2:25 UTC (permalink / raw)
To: 6275 kson; +Cc: alsa-devel
On Wed, Sep 08, 2010 at 02:40:55PM -0500, 6275 kson wrote:
> up as an output device in Ubuntu's (10.4) sound preferences. The device is
> working well with other OS's.
>
> My syslog shows this error.
> 'cannot submit syncpipe for urb 0, error -90: internal error'
>
> If someone could help me diagnose the source of the problem I would
> appreciate it very much.
Could you post the output of "lsusb -v", please?
Thanks,
Daniel
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: USB Audio device syncpipe error
2010-09-08 19:40 ` 6275 kson
2010-09-09 2:25 ` Daniel Mack
@ 2010-09-09 7:50 ` Clemens Ladisch
[not found] ` <AANLkTingHyn2wyJ50uH9GpjnTg_YsL6Q0gzDoVyArvgv@mail.gmail.com>
1 sibling, 1 reply; 8+ messages in thread
From: Clemens Ladisch @ 2010-09-09 7:50 UTC (permalink / raw)
To: 6275 kson; +Cc: alsa-devel
6275 kson wrote:
> cannot submit syncpipe for urb 0, error -90: internal error
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.
So, what is the sync packet size?
Regards,
Clemens
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: USB Audio device syncpipe error
[not found] ` <AANLkTingHyn2wyJ50uH9GpjnTg_YsL6Q0gzDoVyArvgv@mail.gmail.com>
@ 2010-09-09 21:51 ` 6275 kson
2010-09-10 6:21 ` Daniel Mack
2010-09-10 7:01 ` Clemens Ladisch
0 siblings, 2 replies; 8+ messages in thread
From: 6275 kson @ 2010-09-09 21:51 UTC (permalink / raw)
To: Clemens Ladisch, daniel; +Cc: alsa-devel
Well I basically understand what is wrong. Usbaudio is expecting the packet
size to be 4 and the value to be encoded as 16.16 because the device is
operating at high speed. I made the change and my device now shows up
properly as an output device and playback works but the feedback polling
interval is incorrect.
Since the feedback endpoint descriptor is not class specific I can see why
one would expect it to be a usb 2.0 standard endpoint descriptor, however,
that would mean I should also change my other audio streaming endpoint
descriptors.
Unfortunately, I'm not sure the proper way to fix this - any advice would be
appreciated.
Cheers
On Thu, Sep 9, 2010 at 10:04 AM, 6275 kson <6275.kson@gmail.com> wrote:
>
>
> On Thu, Sep 9, 2010 at 2:50 AM, Clemens Ladisch <clemens@ladisch.de>wrote:
>
>> 6275 kson wrote:
>> > cannot submit syncpipe for urb 0, error -90: internal error
>>
>> 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.
>>
>> So, what is the sync packet size?
>>
>
>>
> The packet size is 3.
>
> The descriptor used for High Speed is essentially the same as the full
> speed descriptor except we have adjusted the endpoint polling rates so they
> match the full speed rate (1ms).
>
> Thanks for your help,
>
>
>
>
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: USB Audio device syncpipe error
2010-09-09 21:51 ` 6275 kson
@ 2010-09-10 6:21 ` Daniel Mack
2010-09-10 7:01 ` Clemens Ladisch
1 sibling, 0 replies; 8+ messages in thread
From: Daniel Mack @ 2010-09-10 6:21 UTC (permalink / raw)
To: 6275 kson; +Cc: alsa-devel, Clemens Ladisch
On Thu, Sep 09, 2010 at 04:51:45PM -0500, 6275 kson wrote:
> Well I basically understand what is wrong. Usbaudio is expecting the packet
> size to be 4 and the value to be encoded as 16.16 because the device is
> operating at high speed. I made the change and my device now shows up
> properly as an output device and playback works but the feedback polling
> interval is incorrect.
>
> Since the feedback endpoint descriptor is not class specific I can see why
> one would expect it to be a usb 2.0 standard endpoint descriptor, however,
> that would mean I should also change my other audio streaming endpoint
> descriptors.
>
> Unfortunately, I'm not sure the proper way to fix this - any advice would be
> appreciated.
Hmm, I don't get your point. Why don't you just change the bInterval
field of your endpoint descriptor? Does your device work with OSX, for
example?
Daniel
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: USB Audio device syncpipe error
2010-09-09 21:51 ` 6275 kson
2010-09-10 6:21 ` Daniel Mack
@ 2010-09-10 7:01 ` Clemens Ladisch
2010-09-13 14:42 ` Alex Lee
1 sibling, 1 reply; 8+ messages in thread
From: Clemens Ladisch @ 2010-09-10 7:01 UTC (permalink / raw)
To: 6275 kson; +Cc: alsa-devel
6275 kson wrote:
> Well I basically understand what is wrong. Usbaudio is expecting the packet
> size to be 4 and the value to be encoded as 16.16 because the device is
> operating at high speed. I made the change and my device now shows up
> properly as an output device and playback works but the feedback polling
> interval is incorrect.
What interval do you expect in this situation, and what interval do you
actually get?
> Since the feedback endpoint descriptor is not class specific I can see why
> one would expect it to be a usb 2.0 standard endpoint descriptor,
Yes, the UAC 1.0 spec cannot override the USB spec in this regard.
> however, that would mean I should also change my other audio
> streaming endpoint descriptors.
Which other descriptors? AFAICS, the only other thing that is affected
by high-speed is the packet size and format of the sync endpoint.
Regards,
Clemens
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: USB Audio device syncpipe error
2010-09-10 7:01 ` Clemens Ladisch
@ 2010-09-13 14:42 ` Alex Lee
0 siblings, 0 replies; 8+ messages in thread
From: Alex Lee @ 2010-09-13 14:42 UTC (permalink / raw)
To: alsa-devel
Clemens Ladisch <clemens <at> ladisch.de> writes:
>
> 6275 kson wrote:
> > Well I basically understand what is wrong. Usbaudio is expecting the packet
> > size to be 4 and the value to be encoded as 16.16 because the device is
> > operating at high speed. I made the change and my device now shows up
> > properly as an output device and playback works but the feedback polling
> > interval is incorrect.
>
> What interval do you expect in this situation, and what interval do you
Hi kson,
bInterval in HS is in terms of uFrame, ie 128us. In FS it is in Frame, ie 1ms.
Also, the feedback endpoint may be using bRefresh instead of bInterval to
determine the
interval to check the feedback sample rate.
I'm also implementing the async iso OUT with feedback using UAC1 at HS right
now so I'm
following your posts :-)
Alex
^ permalink raw reply [flat|nested] 8+ messages in thread
end of thread, other threads:[~2010-09-13 14:42 UTC | newest]
Thread overview: 8+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2010-09-08 19:25 USB Audio device syncpipe error 6275 kson
2010-09-08 19:40 ` 6275 kson
2010-09-09 2:25 ` Daniel Mack
2010-09-09 7:50 ` Clemens Ladisch
[not found] ` <AANLkTingHyn2wyJ50uH9GpjnTg_YsL6Q0gzDoVyArvgv@mail.gmail.com>
2010-09-09 21:51 ` 6275 kson
2010-09-10 6:21 ` Daniel Mack
2010-09-10 7:01 ` Clemens Ladisch
2010-09-13 14:42 ` Alex Lee
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.