[PATCH] Enable M-Audio Fast Track Ultra sound device
Salvo Inzerilli
salvoinz at yahoo.it
Tue Feb 2 19:25:34 UTC 2010
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.
--- 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 */
{
I hope to give a positive response from you, thanks in advances.
Best regards
Salvo
More information about the kernel-team
mailing list