linux/sound/usb
Daniel Mack 2b58fd5b31 ALSA: snd-usb: Add quirks for Playback Designs devices
Playback Designs' USB devices have some hardware limitations on their
USB interface. In particular:

 - They need a 20ms delay after each class compliant request as the
   hardware ACKs the USB packets before the device is actually ready
   for the next command. Sending data immediately will result in buffer
   overflows in the hardware.
 - The devices send bogus feedback data at the start of each stream
   which confuse the feedback format auto-detection.

This patch introduces a new quirks hook that is called after each
control packet and which adds a delay for all devices that match
Playback Designs' USB VID for now.

In addition, it adds a counter to snd_usb_endpoint to drop received
packets on the floor. Another new quirks function that is called once
an endpoint is started initializes that counter for these devices on
their sync endpoint.

Signed-off-by: Daniel Mack <zonque@gmail.com>
Reported-and-tested-by: Andreas Koch <andreas@akdesigninc.com>
Supported-by: Demian Martin <demianm_1@yahoo.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
2012-09-04 11:31:14 +02:00
..
6fire ALSA: print small buffers via %*ph[C] 2012-08-06 11:09:50 +02:00
caiaq ALSA: snd-usb-caiaq: initialize card pointer 2012-06-27 12:26:19 +02:00
misc
usx2y
card.c
card.h ALSA: snd-usb: Add quirks for Playback Designs devices 2012-09-04 11:31:14 +02:00
clock.c ALSA: snd-usb: fix clock source validity index 2012-08-01 10:24:16 +02:00
clock.h
debug.h
endpoint.c ALSA: snd-usb: Add quirks for Playback Designs devices 2012-09-04 11:31:14 +02:00
endpoint.h
format.c
format.h
helper.c ALSA: snd-usb: Add quirks for Playback Designs devices 2012-09-04 11:31:14 +02:00
helper.h
Kconfig
Makefile
midi.c
midi.h
mixer_maps.c ALSA: snd_usb_audio: ignore ctrl errors on QuickCam Pro for Notebooks 2012-06-20 08:29:08 +02:00
mixer_quirks.c ALSA: usb-audio: Convert table to preferred C99 format 2012-06-11 12:49:56 +02:00
mixer_quirks.h
mixer.c ALSA: usb-audio - Call get_min_max_*() after determining the name string 2012-05-15 08:35:00 +02:00
mixer.h
pcm.c ALSA: usb-audio: Fix scheduling-while-atomic bug in PCM capture stream 2012-08-16 08:04:07 +02:00
pcm.h
power.h
proc.c
proc.h
quirks-table.h ALSA: USB: Support for (original) Xbox Communicator 2012-09-03 10:14:25 +02:00
quirks.c ALSA: snd-usb: Add quirks for Playback Designs devices 2012-09-04 11:31:14 +02:00
quirks.h ALSA: snd-usb: Add quirks for Playback Designs devices 2012-09-04 11:31:14 +02:00
stream.c ALSA: usb-audio: Fix substream assignments 2012-06-08 09:01:37 +02:00
stream.h
usbaudio.h