Message ID | 873098.12428.qm@web27706.mail.ukl.yahoo.com |
---|---|
State | Awaiting Upstream |
Delegated to: | Stefan Bader |
Headers | show |
Salvo Inzerilli wrote: > Dear Ubuntu Kernel team, good evening. > > My name is Salvo and I write from Italy. > In these months, me and other guys (all Ubuntu or Kubuntu users) are trying to run an external audio card usb2. > This interface is the M-Audio Fast Track Ultra: > > http://www.m-audio.com/products/en_us/FastTrackUltra.html > > About this interface, it seems that the ALSA driver is not yet created, but one of us contacted the ALSA team and they replayed by giving us a patch (to apply to usbaudio.c and to usbquirks.h files and then recompile the kernel) for this interface. > You can see at the following link the email exchanged with the ALSA developer Mr.Clemens where he wrote the patch: > > http://www.mail-archive.com/alsa-user@lists.sourceforge.net/msg25385.html > > Now one french guy applied this patch and recompiled the kernel under Ubuntu 9.10 karmic and finally the Fast Track Ultra works. > here is the translated link to the forum of this french guy: > > http://translate.google.com/translate?hl=en&sl=fr&tl=en&u=http%3A%2F%2Fwww.linuxmao.org%2Ftikiwiki%2Ftiki-view_forum_thread.php%3Ftopics_offset%3D1%26forumId%3D2%26comments_parentId%3D16414 > > > So, I would like to ask to you, to include this patch to the kernel for Ubuntu 9.10 karmic, if it's possible. > This should be great for me and the other guys, and we really really appreciate it. > > I'm making the "paste and copy" of the patch here, because as you can understand, from the ALSA developer's email, we don't have a file, but just a script. > > When this patch is accepted into the upstream developer's repository, it will eventually appear in ALSA stable which is packaged in linux-backports-modules-alsa-lucid-generic. rtg
--- linux/sound/usb/usbaudio.c +++ linux/sound/usb/usbaudio.c @@ -2235,6 +2235,10 @@ static void init_substream(struct snd_us case USB_ID(0x041e, 0x3f0a): /* E-Mu Tracker Pre */ subs->ops.retire_sync = retire_playback_sync_urb_hs_emu; break; + case USB_ID(0x0763, 0x2080): /* M-Audio Fast Track Ultra */ + subs->ops.prepare_sync = prepare_playback_sync_urb; + subs->ops.retire_sync = retire_playback_sync_urb; + break; } } snd_pcm_set_ops(as->pcm, stream, @@ -2786,6 +2790,7 @@ static int parse_audio_endpoints(struct break; case USB_ID(0x041e, 0x3020): /* Creative SB Audigy 2 NX */ case USB_ID(0x0763, 0x2003): /* M-Audio Audiophile USB */ + case USB_ID(0x0763, 0x2080): /* M-Audio Fast Track Ultra */ /* doesn't set the sample rate attribute, but supports it */ fp->attributes |= EP_CS_ATTR_SAMPLE_RATE; break; --- linux/sound/usb/usbquirks.h +++ linux/sound/usb/usbquirks.h @@ -1864,6 +1864,33 @@ } } }, +{ + USB_DEVICE_VENDOR_SPEC(0x0763, 0x2080), + .driver_info = (unsigned long) & (const struct snd_usb_audio_quirk) { + /* .vendor_name = "M-Audio", */ + /* .product_name = "Fast Track Ultra", */ + .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_STANDARD_INTERFACE + }, + { + .ifnum = 2, + .type = QUIRK_AUDIO_STANDARD_INTERFACE + }, + /* interface 3 (MIDI) is standard compliant */ + { + .ifnum = -1 + } + } + } +}, /* Casio devices */ {