linux-stable/sound/usb
Calvin Owens 1539d4f82a ALSA: usb: Add quirk for 192KHz recording on E-Mu devices
When recording at 176.2KHz or 192Khz, the device adds a 32-bit length
header to the capture packets, which obviously needs to be ignored for
recording to work properly.

Userspace expected:  L0 L1 L2 R0 R1 R2
...but actually got: R2 L0 L1 L2 R0 R1

Also, the last byte of the length header being interpreted as L0 of
the first sample caused spikes every 0.5ms, resulting in a loud 16KHz
tone (about the highest 'B' on a piano) being present throughout
captures.

Tested at all sample rates on an E-Mu 0404USB, and tested for
regressions on a generic USB headset.

Signed-off-by: Calvin Owens <jcalvinowens@gmail.com>
Cc: <stable@vger.kernel.org>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
2013-04-13 10:58:03 +02:00
..
6fire ALSA: usb6fire: prevent driver panic state when stopping 2012-12-07 15:03:34 +01:00
caiaq ALSA: snd-usb-caiaq: fix smatch warnings 2013-03-07 09:24:12 +01:00
misc Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound 2012-01-12 08:00:30 -08:00
usx2y mm: kill vma flag VM_RESERVED and mm->reserved_vm counter 2012-10-09 16:22:19 +09:00
Kconfig ALSA: sound/usb: remove CONFIG_EXPERIMENTAL 2012-10-25 00:17:47 +02:00
Makefile ALSA: snd-usb: move code from urb.c to endpoint.c 2011-09-14 17:07:03 +02:00
card.c ALSA: usb-audio: UAC2: auto clock selection module param 2013-04-04 08:31:32 +02:00
card.h ALSA: usb: Add quirk for 192KHz recording on E-Mu devices 2013-04-13 10:58:03 +02:00
clock.c ALSA: snd-usb: Playback Design: use usb_set_inferface quirk from more locations 2013-04-10 09:21:43 +02:00
clock.h ALSA: usb-audio: UAC2: do clock validity check earlier 2013-04-04 08:30:59 +02:00
debug.h ALSA: usb-audio: make hwc_debug a noop in case HW_CONST_DEBUG is not set 2011-05-18 11:44:35 +02:00
endpoint.c ALSA: usb-audio: spelling correction 2013-04-04 08:30:30 +02:00
endpoint.h ALSA: usb-audio: spelling correction 2013-04-04 08:30:30 +02:00
format.c ALSA: usb-audio: UAC2: do clock validity check earlier 2013-04-04 08:30:59 +02:00
format.h ALSA: snd-usb: handle the bmFormats field as unsigned int 2013-03-18 08:47:04 +01:00
helper.c ALSA: snd-usb: Add quirks for Playback Designs devices 2012-09-04 11:31:14 +02:00
helper.h ALSA: usb-audio: increase control transfer timeout 2011-09-27 09:21:48 +02:00
midi.c ALSA: usb-audio: neaten EXPORT_SYMBOLS placement 2013-04-04 08:30:24 +02:00
midi.h ALSA: usb-audio: add support for Akai MPD16 2010-05-21 17:12:30 +02:00
mixer.c ALSA: snd-usb: mixer: ignore -EINVAL in snd_usb_mixer_controls() 2013-03-20 08:43:00 +01:00
mixer.h ALSA: usb-audio: add control index offset 2012-11-29 08:43:12 +01:00
mixer_maps.c ALSA: usb-audio: add support for M-Audio FT C600 2013-02-11 14:02:27 +01:00
mixer_quirks.c ALSA: usb-audio: add support for M-Audio FT C600 2013-02-11 14:02:27 +01:00
mixer_quirks.h ALSA: usb-mixer: factor out quirks 2010-03-12 12:20:26 +01:00
pcm.c ALSA: usb: Add quirk for 192KHz recording on E-Mu devices 2013-04-13 10:58:03 +02:00
pcm.h ALSA: usb: refine delay information with USB frame counter 2011-09-12 10:30:20 +02:00
power.h ALSA: usbaudio: implement USB autosuspend 2011-03-11 14:59:29 +01:00
proc.c ALSA: usb-audio: convert list_for_each to entry variant 2013-04-04 08:30:06 +02:00
proc.h ALSA: usb-audio: refactor code 2010-03-05 08:17:14 +01:00
quirks-table.h ALSA: usb-audio: Trust fields given in the quirk 2013-03-18 08:46:37 +01:00
quirks.c ALSA: usb: Add quirk for 192KHz recording on E-Mu devices 2013-04-13 10:58:03 +02:00
quirks.h ALSA: snd-usb: Playback Design: use usb_set_inferface quirk from more locations 2013-04-10 09:21:43 +02:00
stream.c ALSA: usb: Add quirk for 192KHz recording on E-Mu devices 2013-04-13 10:58:03 +02:00
stream.h ALSA: snd-usb: re-order code 2011-09-14 17:07:02 +02:00
usbaudio.h ALSA: usb-audio: UAC2: auto clock selection module param 2013-04-04 08:31:32 +02:00