aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorEran Tromer <eran@tromer.org>2008-09-26 01:07:03 -0400
committerJaroslav Kysela <perex@perex.cz>2008-10-10 07:41:37 -0400
commit97c889a78b70f0ac0949967bf174d1a6a28bfb5c (patch)
treecce436e5681a5b4112ec901d48959e753447a8d9
parentdc9c8e218da823008ce1572998902a4bdf46af37 (diff)
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>
-rw-r--r--sound/usb/usbaudio.c3
-rw-r--r--sound/usb/usbquirks.h7
2 files changed, 9 insertions, 1 deletions
diff --git a/sound/usb/usbaudio.c b/sound/usb/usbaudio.c
index c5cf682c352f..8af12b680e12 100644
--- a/sound/usb/usbaudio.c
+++ b/sound/usb/usbaudio.c
@@ -484,7 +484,7 @@ static int retire_playback_sync_urb_hs(struct snd_usb_substream *subs,
484} 484}
485 485
486/* 486/*
487 * process after E-Mu 0202/0404 high speed playback sync complete 487 * process after E-Mu 0202/0404/Tracker Pre high speed playback sync complete
488 * 488 *
489 * These devices return the number of samples per packet instead of the number 489 * These devices return the number of samples per packet instead of the number
490 * of samples per microframe. 490 * of samples per microframe.
@@ -2264,6 +2264,7 @@ static void init_substream(struct snd_usb_stream *as, int stream, struct audiofo
2264 switch (as->chip->usb_id) { 2264 switch (as->chip->usb_id) {
2265 case USB_ID(0x041e, 0x3f02): /* E-Mu 0202 USB */ 2265 case USB_ID(0x041e, 0x3f02): /* E-Mu 0202 USB */
2266 case USB_ID(0x041e, 0x3f04): /* E-Mu 0404 USB */ 2266 case USB_ID(0x041e, 0x3f04): /* E-Mu 0404 USB */
2267 case USB_ID(0x041e, 0x3f0a): /* E-Mu Tracker Pre */
2267 subs->ops.retire_sync = retire_playback_sync_urb_hs_emu; 2268 subs->ops.retire_sync = retire_playback_sync_urb_hs_emu;
2268 break; 2269 break;
2269 } 2270 }
diff --git a/sound/usb/usbquirks.h b/sound/usb/usbquirks.h
index 3f68359d4942..d96bf8b2b94b 100644
--- a/sound/usb/usbquirks.h
+++ b/sound/usb/usbquirks.h
@@ -62,6 +62,13 @@
62 .idProduct = 0x3f04, 62 .idProduct = 0x3f04,
63 .bInterfaceClass = USB_CLASS_AUDIO, 63 .bInterfaceClass = USB_CLASS_AUDIO,
64}, 64},
65{
66 /* E-Mu Tracker Pre */
67 .match_flags = USB_DEVICE_ID_MATCH_DEVICE,
68 .idVendor = 0x041e,
69 .idProduct = 0x3f0a,
70 .bInterfaceClass = USB_CLASS_AUDIO,
71},
65 72
66/* 73/*
67 * Logitech QuickCam: bDeviceClass is vendor-specific, so generic interface 74 * Logitech QuickCam: bDeviceClass is vendor-specific, so generic interface