ALSA: usb-audio: add support for E-Mu Tracker Pre

Add support for the E-Mu "Tracker Pre" USB sound card, following
the example of the (very similar) E-Mu 0202 and E-Mu 0404 USB.

As with the 0202 and 0404 USB, functionality is very limited:
just a couple of sample rates, no volume/mute control, etc.

Signed-off-by: Eran Tromer <eran@tromer.org>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
This commit is contained in:
Eran Tromer 2008-09-26 01:07:03 -04:00 committed by Jaroslav Kysela
parent dc9c8e218d
commit 97c889a78b
2 changed files with 9 additions and 1 deletions

View File

@ -484,7 +484,7 @@ static int retire_playback_sync_urb_hs(struct snd_usb_substream *subs,
} }
/* /*
* process after E-Mu 0202/0404 high speed playback sync complete * process after E-Mu 0202/0404/Tracker Pre high speed playback sync complete
* *
* These devices return the number of samples per packet instead of the number * These devices return the number of samples per packet instead of the number
* of samples per microframe. * of samples per microframe.
@ -2264,6 +2264,7 @@ static void init_substream(struct snd_usb_stream *as, int stream, struct audiofo
switch (as->chip->usb_id) { switch (as->chip->usb_id) {
case USB_ID(0x041e, 0x3f02): /* E-Mu 0202 USB */ case USB_ID(0x041e, 0x3f02): /* E-Mu 0202 USB */
case USB_ID(0x041e, 0x3f04): /* E-Mu 0404 USB */ case USB_ID(0x041e, 0x3f04): /* E-Mu 0404 USB */
case USB_ID(0x041e, 0x3f0a): /* E-Mu Tracker Pre */
subs->ops.retire_sync = retire_playback_sync_urb_hs_emu; subs->ops.retire_sync = retire_playback_sync_urb_hs_emu;
break; break;
} }

View File

@ -62,6 +62,13 @@
.idProduct = 0x3f04, .idProduct = 0x3f04,
.bInterfaceClass = USB_CLASS_AUDIO, .bInterfaceClass = USB_CLASS_AUDIO,
}, },
{
/* E-Mu Tracker Pre */
.match_flags = USB_DEVICE_ID_MATCH_DEVICE,
.idVendor = 0x041e,
.idProduct = 0x3f0a,
.bInterfaceClass = USB_CLASS_AUDIO,
},
/* /*
* Logitech QuickCam: bDeviceClass is vendor-specific, so generic interface * Logitech QuickCam: bDeviceClass is vendor-specific, so generic interface