ALSA: usbaudio Mbox support, output only
Chris J Arges [Wed, 17 Feb 2010 18:12:52 +0000 (12:12 -0600)]
Signed-off-by: Chris J Arges <christopherarges@gmail.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>

sound/usb/usbquirks.h

index e691eba..fc1d2cd 100644 (file)
@@ -2215,6 +2215,51 @@ YAMAHA_DEVICE(0x7010, "UB99"),
        }
 },
 
+/* Digidesign Mbox */
+{
+       /* Thanks to Clemens Ladisch <clemens@ladisch.de> */
+       USB_DEVICE(0x0dba, 0x1000),
+       .driver_info = (unsigned long) &(const struct snd_usb_audio_quirk) {
+               .vendor_name = "Digidesign",
+               .product_name = "MBox",
+               .ifnum = QUIRK_ANY_INTERFACE,
+               .type = QUIRK_COMPOSITE,
+               .data = (const struct snd_usb_audio_quirk[]){
+                       {
+                               .ifnum = 0,
+                               .type = QUIRK_IGNORE_INTERFACE,
+                       },
+                       {
+                               .ifnum = 1,
+                               .type = QUIRK_AUDIO_FIXED_ENDPOINT,
+                               .data = &(const struct audioformat) {
+                                       .format = SNDRV_PCM_FORMAT_S24_3BE,
+                                       .channels = 2,
+                                       .iface = 1,
+                                       .altsetting = 1,
+                                       .altset_idx = 1,
+                                       .attributes = EP_CS_ATTR_SAMPLE_RATE,
+                                       .endpoint = 0x02,
+                                       .ep_attr = 0x01,
+                                       .maxpacksize = 0x130,
+                                       .rates = SNDRV_PCM_RATE_44100 |
+                                                SNDRV_PCM_RATE_48000,
+                                       .rate_min = 44100,
+                                       .rate_max = 48000,
+                                       .nr_rates = 2,
+                                       .rate_table = (unsigned int[]) {
+                                               44100, 48000
+                                       }
+                               }
+                       },
+                       {
+                               .ifnum = -1
+                       }
+               }
+
+       }
+},
+
 {
        /*
         * Some USB MIDI devices don't have an audio control interface,