All of lore.kernel.org
 help / color / mirror / Atom feed
From: Jassi Brar <jassisinghbrar@gmail.com>
To: Clemens Ladisch <clemens@ladisch.de>
Cc: Takashi Iwai <tiwai@suse.de>,
	alsa-devel@alsa-project.org, Daniel Mack <daniel@caiaq.de>
Subject: Re: Fixed sampling freq UAC2 doubt
Date: Sat, 29 Jan 2011 20:29:04 +0900	[thread overview]
Message-ID: <AANLkTi=+AB88uoN_Ahk8DHeZ=igCC+cb67=hnD_r5d_Z@mail.gmail.com> (raw)
In-Reply-To: <4D412965.7010704@ladisch.de>

On Thu, Jan 27, 2011 at 5:14 PM, Clemens Ladisch <clemens@ladisch.de> wrote:
> 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.

Ok, though I am still going to allow for 0 and the 'supported' freq to
be SET, because
mine is going to be a virtual 'utility' gadget driver and there is not
much point being too
a purist in such a trivial case.


>> 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.

There seems more such situations where the specs are 'overlooked'. I mean
not many fields of the UAC2 descriptors are found to be used.
My employer willing, I would love to work on the UAC-2 host-class
driver as well.

Thanks
_______________________________________________
Alsa-devel mailing list
Alsa-devel@alsa-project.org
http://mailman.alsa-project.org/mailman/listinfo/alsa-devel

      reply	other threads:[~2011-01-29 11:29 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-01-21  8:35 Fixed sampling freq UAC2 doubt Jassi Brar
2011-01-24 13:21 ` Takashi Iwai
2011-01-27  8:14 ` Clemens Ladisch
2011-01-29 11:29   ` Jassi Brar [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to='AANLkTi=+AB88uoN_Ahk8DHeZ=igCC+cb67=hnD_r5d_Z@mail.gmail.com' \
    --to=jassisinghbrar@gmail.com \
    --cc=alsa-devel@alsa-project.org \
    --cc=clemens@ladisch.de \
    --cc=daniel@caiaq.de \
    --cc=tiwai@suse.de \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
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.