[alsa-devel] Fixed sampling freq UAC2 doubt

Clemens Ladisch clemens at ladisch.de
Thu Jan 27 09:14:29 CET 2011


Jassi Brar wrote:
>  While testing my under-development generic USB Audio Class 2.0 _gadget_ driver
> with ALSA's USB Audio Class driver, I came across an apparent discrepency.
> Or so do I think.
> 
> Page-98 Section 5.2.5.1.1 of 'Audio 20 final.pdf' specifies :-
> [In many cases, the Clock Source Entity represents a crystal
> oscillator based generator
>  with a single fixed frequency. In that case, the Set request is not supported.]
> 
> Here 'not supported' means setup requests for CUR/RANGE CS_SAM_FREQ_CONTROL
> should stall. Right ?

Strictly speaking, "is not" (instead of "might not be") implies that the
device _must_ stall.

> The snd_usb_hw_params in sound/usb/pcm.c apparently attempts to do that with
> disregard to Clock-Frequency-Control bitmask in bmControls field of the
> Clock Source Descriptor.
> 
> The confusion is, subs->cur_rate is initialized only if snd_usb_init_sample_rate
> succeeds. Which does SET control tranfer, albeit with the supported frequency.
> Couldn't a fixed sampling freq UAC2 compliant device refuse to work in
> that case, thereby failing any attempt to use the USB card?

Yes, it will fail.  This is a bug in the driver.


Regards,
Clemens


More information about the Alsa-devel mailing list