Clemens Ladisch wrote: > Cameron Stone wrote: >> I'm writing some firmware for a USB microphone array with multiple >> configurations, and I'm wondering if it's possible to tell ALSA which >> configuration to use in a module option or something (device_setup, >> perhaps). >> >> I've been looking through usbaudio.c in the kernel source >> (2.6.28-11-generic from the ubuntu Jaunty package), and I can't find any >> generic device configuration like that. >> >> If this is not possible, does anyone have any recommendations on how to >> implement this? I can imagine doing it using quirks for this particular >> USB_ID, but this seems like a fairly generic type of capability, so I'd >> like to make it general if possible. > > While the USB specifications define configurations, there is no generic > way how a driver could automatically determine which configuration to > use. I was thinking in terms of a module parameter that would be set if a configuration other than the default (first) configuration was desired. Could that work? >> If anyone is wondering *why* I want multiple configurations: it's for >> bandwidth management. I have 8 channels, but I want to be able to sample >> 1 channel as fast as possible without wasting bandwidth on the other 7. >> I couldn't figure out a way to do that with a single configurations. > > Bandwidth management is implemented by having multiple alternate > settings for the audio streaming interface. (This is why alternate > setting zero must have no endpoint or a zero-sized endpoint, so that > in the default case, the interface does not use any bandwidth.) Is it possible to have alternate settings with different numbers of channels? I can see how I could easily en/disable the channels in the firmware, but I can't see how to inform the driver that the number of channels has changed. Thanks, Cameron. _______________________________________________ Alsa-devel mailing list Alsa-devel@xxxxxxxxxxxxxxxx http://mailman.alsa-project.org/mailman/listinfo/alsa-devel