----- Mail original -----
De: "Clemens Ladisch" clemens@ladisch.de À: alsa-devel@alsa-project.org Envoyé: Lundi 28 Janvier 2013 14:10:06 Objet: Re: [alsa-devel] Some information about UsbPre2 UAC2 support
shal@free.fr wrote:
shal@free.fr wrote:
It's seems that the behavior of the sound card depends to the first get_configuration() and keep it until powered. I discovers that when I performs a reboot in order to test my modified kernel : The sound card remains in UAC1.
I have to plug/unplug the sound card in order to have 2 configurations descriptor for this device.
That's strange; the get_descriptor request should be the same.
The scenario is : - I used a standard kernel (with 64 as get_descriptor buffer size) - I connect the sound card - the sound card recognize the OS as a Windows and sends a UAC1 only configuration and keep this state for all get_configuration - I reboot with modified kernel (with 65 as get_descriptor buffer size) - The sound card already provides a UAC1 only configuration - I plug/unplug the sound card (the UbsPre2 is usb powered) - Now the sound card provides a UAC1+UAC2 configuration
A usb_reset() can be helpful, perhaps?
Perhaps.
=> I will try this : - standard usb core driver (revert my ugly patch on huc.c and generic.c) - in the usb audio I will add a quirk for the vendor/product ID of my sound card - I performed a usb_reset() - I performed a get_descriptor using a usb_control() with 65 as buffer size - I choose the 2nd configuration descriptor
There is any chance that it works ?
Perhaps, we can do the same thing that the ASIO driver.
That's what I meant with the quirk. (The first configuration does have endpoints for high sample rates, but these aren't marked as being compatible with either UAC 1 or 2.)
I will ask more information to the Sound Devices developper.
Thank,
best regards, Olivier