summary refs log tree commit diff
path: root/sound/usb
diff options
context:
space:
mode:
authorClemens Ladisch <clemens@ladisch.de>2010-08-30 16:32:43 +0200
committerTakashi Iwai <tiwai@suse.de>2010-09-03 22:24:16 +0200
commitaa70201fdc374f245cfa1874e11df145ace3ffaf (patch)
treead68f906b21a0c68a9cd2c00471b226d18bfea8b /sound/usb
parent65f04443c96dbda11b8fff21d6390e082846aa3c (diff)
downloadlinux-aa70201fdc374f245cfa1874e11df145ace3ffaf.tar.gz
ALSA: usb-audio: add Edirol PCR-1 PCM support
Add a quirk for the other logical device of the PCR-1 so that not only
the MIDI interface but also the audio interface works.

Signed-off-by: Clemens Ladisch <clemens@ladisch.de>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Diffstat (limited to 'sound/usb')
-rw-r--r--sound/usb/quirks-table.h27
1 files changed, 25 insertions, 2 deletions
diff --git a/sound/usb/quirks-table.h b/sound/usb/quirks-table.h
index 4818fbdc02fb..838b81b74fd7 100644
--- a/sound/usb/quirks-table.h
+++ b/sound/usb/quirks-table.h
@@ -1136,11 +1136,34 @@ YAMAHA_DEVICE(0x7010, "UB99"),
 	}
 },
 {
+	/* has ID 0x0066 when not in "Advanced Driver" mode */
+	USB_DEVICE(0x0582, 0x0064),
+	.driver_info = (unsigned long) & (const struct snd_usb_audio_quirk) {
+		/* .vendor_name = "EDIROL", */
+		/* .product_name = "PCR-1", */
+		.ifnum = QUIRK_ANY_INTERFACE,
+		.type = QUIRK_COMPOSITE,
+		.data = (const struct snd_usb_audio_quirk[]) {
+			{
+				.ifnum = 1,
+				.type = QUIRK_AUDIO_STANDARD_INTERFACE
+			},
+			{
+				.ifnum = 2,
+				.type = QUIRK_AUDIO_STANDARD_INTERFACE
+			},
+			{
+				.ifnum = -1
+			}
+		}
+	}
+},
+{
 	/* has ID 0x0067 when not in "Advanced Driver" mode */
 	USB_DEVICE(0x0582, 0x0065),
 	.driver_info = (unsigned long) & (const struct snd_usb_audio_quirk) {
-		.vendor_name = "EDIROL",
-		.product_name = "PCR-1",
+		/* .vendor_name = "EDIROL", */
+		/* .product_name = "PCR-1", */
 		.ifnum = 0,
 		.type = QUIRK_MIDI_FIXED_ENDPOINT,
 		.data = & (const struct snd_usb_midi_endpoint_info) {