Re: snd_usb_audio

From: Clemens Ladisch
Date: Wed Nov 16 2005 - 04:11:19 EST


Markus Rechberger wrote:
> finally the em28xx driver made it into the kerneltree, but one
> problem still remains
> the snd_usb_audio driver.
>
> The problem with the snd_usb_audio driver is that it only supports
> up to 10 isochronous packets.

This is packets per URB; we typically have 8 URBs.

> If people watch TV using such a framegrabber device and set audio
> to > 8000hz the video isoc transfer will break and the video will
> stop.

What exactly breaks? Are you using playback or capture?

If there is an underrun when starting a _playback_ stream, then it's a
known bug that has been fixed in 2.6.15-rc1.

> regarding usbaudio.c (in 2.6.14):
> #define MAX_PACKS 10
> #define MAX_PACKS_HS (MAX_PACKS * 8) /* in high speed mode */
>
> MAX_PACKS is the upper limit that is adjustable, the second one
> isn't used at all
>
> an easy hack would be to allow up to 100 packets but I also have a
> usb 1.1 soundblaster that might have problems with too many packets.
>
> The correct value for em28xx devices is around 80 packets.

Did you test this? Capturing doesn't use MAX_PACKS.

> does anyone know more about the packet limitations on USB 1.1 and
> 2.0 devices?

The only limitation are the host controller drivers.


HTH
Clemens

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/